主頁 > 區塊鏈 > 開源路上的酸甜苦辣

開源路上的酸甜苦辣

2021-06-16 18:11:20 區塊鏈

多年前決定開源時,我們挺興奮的:作為典型碼農,“用”開源是日常,而全力投入“做”開源,對我們絕大部分人都是頭一遭,

我們也曾天真地以為:“開源”能有多難呢?!不就是把代碼放出去,大家一起用,一起寫嘛,

但是,“開源”這事兒真的是這樣子么?還是先看幾個靈魂拷問吧:

  • 目前區塊鏈領域的開源社區處于什么發展階段?

  • 開源社區的參與者是“用戶”(user)為主還是“貢獻者”(contributor)為主?

  • 專案的star數和contributor數究竟有多重要?

徐徐幾年,眾多社區伙伴圍繞FISCO BCOS開源了諸多專案,覆寫了區塊鏈核心技術、應用開發到運營運維治理的全領域,社區聚集了4萬多名開發者關注者,2000多個機構,數以百計的應用已經在生產環境穩定運行,社區和產業生態活躍度在圈子里也獲得了諸多好評,

2021年3月,國家“十四五”規劃綱要發布,“開源”首次列入其中,指出要支持數字技術開源社區等創新聯合體發展,完善開源知識產權和法律體系,鼓勵企業開放軟體源代碼、硬體設計和應用服務,

今年6月,工業和資訊化部、中央網路安全和資訊化委員會辦公室聯合發布的《關于加快推動區塊鏈技術應用和產業發展的指導意見》進一步鼓勵開源并指出,要建立開源生態,加快建設區塊鏈開源社區,圍繞底層平臺、應用開發框架、測驗工具等,培育一批高質量開源專案,

我們深受鼓舞,回望過去,在打造良性互動的開源社區新生態方面,我們已進行諸多探索,這其中的酸甜苦辣,仍然歷歷在目,

直面問題

這幾年來,每天早上我醒來的第一件事就是拿起手機,看技術群里有什么問題,作業間隙看、開會間歇看、走在路上也看……活躍的社區群,有時訊息猶如刷屏一般,

問題五花八門,從基本概念、安裝部署到代碼分析,再到從產業層面切入來找案例,或者聊區塊鏈和開源軟體,以及開源商業化的……在前沿技術領域,不同個體在不同的階段總是能碰到新的問題,

圖片

我其實挺享受在社區里當“客服”的,在漫長的職業生涯中,我泡過技術論壇,也做過互聯網公司的客服系統,開源社區讓我找回了和網友打交道的感覺——親切、有趣、大家都在做有意思的事情,

為啥社區里會涌現出這么多的問題,我們也有一些反思,是因為區塊鏈領域太新了,概念過于晦澀,導致開發者需要邁過的學習門檻較高?還是我們的出品沒做好,檔案沒寫清楚,確實難懂難用,BUG還多呢?

有一說一,2017年末開源的最初版本,光搭鏈組網就足有十幾個步驟,每一個步驟都有可能因為環境和網路差異,以及軟體本身不完善的容錯能力而“跪掉”,

在那時候,能把鏈搭起來已經挺費勁了,運行起來偶爾會有“coredump”(行程崩潰),用戶把core檔案(系統例外堆疊)發給我們以進行詳細分析時,看著例外堆疊,我們內心其實是略有苦澀的,

曾有行業專家當面吐槽:“你們代碼風格一般呀”,他們本來想引入的,但看了代碼風格,覺得還是等等吧,個中滋味,我們懂,

當時,整個行業幾乎沒有工業級可用的區塊鏈底層平臺,我們從0到1做出的第一個版本, “能用”就是一個小flag,也確實落地了一些應用,但整體離優秀開源專案的差距還挺明顯,

至于檔案,大家都知道,程式員寫代碼很high,寫注釋算是義務,但寫檔案簡直比趕鴨子上架還難,奮筆疾書憋出了好長的一個使用檔案,但相關的概念原理、例外處理方法不全面,撰文技巧和經驗更是欠奉,看起來很“硬”,

在人才方面,幾年前,圈子里有個無法證實的說法,“在國內,能徒手擼出一條鏈的人,不會超過200個”,同時放眼整個中國的開源領域,深度參與到開源專案中的開發者,其整體規模也并不大,

區塊鏈行業熱潮掀起時,社區開發者們熱情都很高,踴躍參與開源專案,積極學習技術和開展應用,其中有不少是在校學生和學術研究人員,以及對企業級或互聯網軟體研發有一定經驗的開發者,還有從非技術角度切入的“文科”人士,總的來說,精通區塊鏈原理、通讀區塊鏈專案源代碼、能嫻熟開發區塊鏈應用的硬核區塊鏈開發者,可遇而不可求,

無論如何,我們不能指望一開始就有海量開發者天降神兵,踩著祥云來共建社區,

我們沒有刻意去對比國內外其他區塊鏈專案的狀態和經驗,別人的模式不完全適用,畢竟開源內容不同、環境和文化不同,發展階段和發展模式都不同,可資借鑒的經驗也寥寥,

大體上,當時國內的區塊鏈開源社區屬于“起步”階段

化繁為簡

那段時間,開源作業組有許多深入的討論:方向對不對、版本優先級怎么排、能不能讓內外上下游都滿意……大家非常焦慮,常常討論到凌晨一兩點,

萬事不決,還是回到原點:“想讓別人滿意,首先得讓自己滿意”,我們不斷自問:好用的開源專案應該是什么樣子?

想想Linux/Apache/Mysql/PHP(合起來就是著名的LAMP)這些成熟的開源軟體,是不是down下來就能安裝?安裝了就能跑?用這些軟體,遇到問題的話,可以讀官方檔案學習原理和細節;再不行,論壇上問、網上搜,買書看,總能找到答案和案例,

團隊有位架構師,人稱“楠哥”,他用一句話終止糾結,“如果一個軟體用戶15分鐘還用不起來,他們一定會拋棄你!”

于是,碼農們掐著秒,數著命令列寫代碼:下載代碼和軟體要花多長時間?是不是一行命令就能把鏈搭起來?組態檔用json編輯起來是不是容易誤操作,用ini/toml格式是不是更簡單一些?

“多個行程多個鬼、多個步驟多個鬼,”,這是我們的口頭禪,極致的簡化,把代碼中的“玄學”變成確定性,“能用就行”肯定是不行的,還要好用、耐操!我們根據之前的經驗,適配各種作業系統和軟硬環境,預置默認組網模式和證書檔案,讓使用者在整個程序中連“踩坑”的機會都沒有,萬一還是出錯,則高亮提示、FAQ直達,用多種策略自動檢測和恢復,應有盡有,

鏈搭起來了,接著就是打磨控制臺、瀏覽器,讓區塊鏈看得見摸得著,用戶一旦眼中見圖,心里更有數,然后,內置應用模板,乃至壓測樣例,以使得開發者可以按圖索驥,一鍵構建應用,更進一步,區塊鏈上云,云上資源調配、部署交付、運維運營一站式搞定,

如果開發者有興趣繼續研究細節,我們還有詳細的使用手冊和技術檔案,足足有百萬字規模,趕上幾本書了,可以慢慢讀,還可以搜索直達知識點,

此外,軟體的核心能力也沒落下,大家都很熟悉的“wheat”,有技術潔癖和質量強迫癥,對技術攻關、架構合理性、代碼風格和版本時間線毫不妥協,代碼必須經過幾個人(包括他自己)交叉review過,而且單元測驗覆寫率足夠高,才能commit,

讓人欣慰的是,2017年到2018年,開源作業組陸續加入了許多老司機和剛畢業的小鮮肉,他們都很生猛,大大地充實了開發力量,并隨著專案一起成長,這也是硬核技術創新的奧義:“21世紀,人才最可貴”,大家一起投入,性能、安全、穩定指標都達到了高水準,同時隱私保護、跨鏈、新型虛擬機、鏈治理等多種核心能力也逐步完善,

回首看,2019年初與社區共同打磨出來的FISCO BCOS 2.0版本可以說是一個里程碑,用起來簡潔快捷,工具和檔案配套齊備,核心能力靠譜,怎么一個“爽”字了得,效果那是立竿見影,能把區塊鏈快速跑起來、用起來的開發者肉眼可見的迅猛增加,社區留存率明顯提升,同時社區提交的ISSUE、代碼和檔案更新也多起來了,

在此之前,社區朋友們可能會禮貌性地夸一下:“開源就是一種精神”、“開源已經是相當有勇氣了”……此刻,終于能聽到有人真心實意地說:“牛!挺好用!”,

現在我們嘗試回答第二個靈魂拷問:如果開源軟體沒有用戶,那么,也大概率不會有什么貢獻者

軟體要吸引“用戶”,它本身至少要穩定可用,再則使用門檻要低,最好開箱即用,互動手感要如絲般順滑,無論是代碼還是界面都要清晰優雅,唯如此,用戶才不會步步驚心,甚至到處踩坑,不會迷失在繁雜的組態檔、天書一樣的日志和錯誤資訊里,

眾所周知,互聯網產品追求“Don’t make me think”,開源專案大抵也如此,若能再有一點極客氣質,那就更贊了!

圖片

授人以漁

在解決了使用門檻的問題后,我們觀察到社區問題在變化,

圖片

首先,“簡陋、用不起來、運行出錯”這些可用性方面的問題明顯減少了,

部署搭建等問題增加了,我們分析,這是因為有更多人在實操搭鏈了,搭建程序中,不免還有一些小的磕磕碰碰,又或者遇到一些概念性和體驗感上的問題,需要咨詢交流,當然,這也說明軟體使用流程,還是檔案都還有提升空間,

功能性問題的大幅增長,佐證著我們的技術、組件確實是被更廣泛地用起來了,許多人在規劃網路拓撲、寫合約調介面,在分配權限、分析資料,又或者是在不同的應用場景探索著更多區塊鏈能力,

最令人欣喜的是,大家對區塊鏈原理、架構、演算法的探討更多了、更深了,交流中不時迸發出火花,觸發靈感,這對明確后續的優化方向,規劃版本,增加特性,以及共同建設都有非常好的參考價值,

社區就像一面鏡子,種種變化明晰可見,映出技術的完善,也見證社區的成長,

對于這個階段,我們也有一些思考:

1、不要指望聊天群能解決所有問題

我們有“社區答疑”排班,如果值班的同學遇到解答不上的難題,將請小組智囊團分析,總之,我們的要求是盡快答復解決,“當日問題當日畢”;尤其是線上產生的問題,要優先跟進,

我曾經花了一個晚上翻看幾個月的群記錄,算了下我們開源團隊每人跟進過的問題數,量還是比較大的(如下是其中一頁),更難能可貴的是,團隊成員的態度和積極性都非常到位,每每及時解決問題,并找到了優化點,他們自己也挺開心,

言無不盡地順暢交流,聚焦解決痛點的社區答疑體系,確實在業內為我們樹立了非常不錯的口碑,

圖片

聊天群的好處在于交流無比便捷,其不足也顯而易見,群聊會吸引不少注意力,聊天記錄難以被其他人翻查,不利于積累和復用,隨著新人的不斷加入,不少常見問題的重復率極高,技術論壇應該是不錯的互補,當然技術論壇的搭建和維護,也是需要投入的,

而隨著社區人數和領域覆寫面爆發式擴張,單憑開源作業組來在線答疑,是否是最佳解呢?我們思考之余,覺得這也算是“幸福的煩惱”吧,

2、不要指望檔案解決所有問題

軟體質量基本穩定后,每當看到問題,我的第一反應常常是,“是不是檔案沒寫清楚?!”

開源專案檔案包括使用手冊、開發教程、術語和概念、架構原理、FAQ等等,可謂“汗牛充棟”,好在線上檔案支持關鍵字檢索,基本上能想到的知識點,都可以檢索出來,

同時,在公眾號、合作媒體上,我們也發布了多角度的文章,嘗試跳出技術細節,去澄清區塊鏈思維,科普區塊鏈學習方法,把經驗和教訓傳承起來,我們真心的希望這些文章能給不同階段的讀者一些啟發,從技術的“第一性原理”出發,舉一反三,直達區塊鏈知識內核,

圖片

但我們發現,理想和現實是有差距的:檔案怎么寫都會掛一漏萬;用戶的操作路徑、思考模式和我們預期的不一樣;以及環境不一樣,出的問題也會不一樣……

此外,受傳播渠道、曝光率等諸多原因的影響,檔案并沒有傳播到所有用戶;或者因為檔案目錄結構太深,用戶確實沒看到特定知識點;即使是看到了檔案,面對上百萬字的浩瀚篇幅,很多人會表示:“nice,先收藏慢慢看”……種種因素都可能導致檔案的有效閱讀吸收率并不樂觀,

其實,用戶根本不太想去看長篇大論,他只想趕緊解決手頭上的問題,

總體來看,檔案一定要有,還要好,但檔案就像寶藏,適合慢慢挖掘,難解燃眉之急,

3、不要指望自己就能解決所有問題

日拱一卒,遇到一個問題解決一個問題,就萬事大吉了么?

用戶問題確實是最好的方向標,如果一個問題一個星期內出現了兩次以上,而且還是由不同的用戶問到的,那么可以肯定,是個需要優先解決的問題,

對不同的問題有不同的解法:可以迭代新版本把問題修掉,讓它不再出現;也可以是修訂檔案,并給出顯眼的檔案入口供參考;甚至可以是跟用戶聊聊,對齊了概念和思路,有的問題就消解了,解法很多,但關鍵是要快、要準、要倍訓,

實踐也證明,開源作業組不可能包辦一切,比如有些用戶的需求比較場景化,不適合放到主版本里,由開發者拉分支定制開發更為合理,有些問題跟不同環境、不同業務領域有關,事實上,開源作業組對很多領域也并非專家,只能是根據自己的理解,從技術角度切入和大家交流探討,期望能互相啟發,

本質上,如果只有開源作業組在做單向輸出,用戶是沉默的大多數,這樣的社區勢必會變得沉悶、無聊,也很快會遇到天花板,理想的模式是在整個社區形成正回圈發展:老手幫助新手,新手成為老手,老手直接上手寫代碼,分布式解決問題和滿足需求,整個程序大家都有貢獻、有創新、有積累、有提升,

我們有時候會想,開源作業組是不是要稍微往后退一小步?我們更多的做好服務和布道的角色,以科普引導、激發鼓勵為主,給社區小伙伴們更大的舞臺,這樣效果是不是更好?所以,我們除了寫代碼,還寫檔案、寫教材,參與國家人才標準撰寫,組織線上線下的沙龍、培訓、黑客松,這都是“授人以魚,不如授人以漁”,

在行業發展的爬坡期,我們希望幫助更多的人學起來,用起來,讓人才多起來,邁過了技術門檻的用戶一旦成為嫻熟的開發者,那么BUG一冒頭就會被修正,不同的需求快速得以滿足,軟體本身也將越來越優秀,

圖片

目前社區已經自發形成了諸多SIG(Special Interesting Group即興趣小組),組員們從社區主動加入,根據自己感興趣和有所長的技術、應用主題,展開分布式合作,下圖是其中一位組長(群昵稱:李大狗)在小組介紹里的一頁,我覺得“有趣、務實、激勵、貢獻”這幾個關鍵字歸納得非常棒!

圖片

開源作業組,社區SIG以及不斷涌現的開發者群體,構成了立體化社區技術力量,

我們持續聚焦軟體質量和提升體驗,減少重復問題,并引導和推動社區往自服務階段走,分工合作,有利于聚焦識別更前瞻性的特性、承擔更有挑戰性的問題,廣大開發者能施展的空間也越來越大,

揚帆航海

逐步成熟的社區將會呈現“網路效應”,良好的口碑是“自來水”,產業人士聚集得越來越多,生態和商業模型自然會長出來,

剛開源的時候,我們全國到處飛,去宣講理念和技術,邀請大家關注我們的社區,最早的社區群就是這么一個一個人的“拉” 起來的,

我有個朋友一直默默地關注開源社區,把區塊鏈融合到他們的行業產品中去,直到產品成功上線后才告訴我,

我問他:“你們完全不需要支持的么”?

他說:“開源軟體就挺好用的,我們自己的技術團隊實作業務邏輯,做一下運維配置就可以上線了”,

現在他們已經是“社區認證合作伙伴”,持續地用區塊鏈技術去落地應用,他們的成果也以代碼、工具、案例等方式回饋給社區,

這樣的社區伙伴還有許多,他們在各自的垂直行業領域里有著深刻造詣,與開源社區形成了互補,在區塊鏈方面,他們只需引入開源技術,而不用重復造輪子,效率大增,成本猛降,同時,他們在行業實踐中,持續挖掘出許多非常接地氣的需求,貢獻了大量技術成果,其落地的實踐更是對區塊鏈技術價值的驗證,他們的案例已經成為了產業地圖上的標桿,

更有意義的是,我們發現不少企業在社區里發掘并招募到自己需要的人才;也有的在社區遇到產業鏈或技術堆疊互補、理念又相近的產業伙伴,然后愉快地建立合作關系,總之,社區搭起跨越行業和地域的橋梁,是實作精神物質雙識訓的平臺,自發的形成志同道合、共建共贏的開放聯盟,

這里必須介紹下, FISCO BCOS開源作業組是由“FISCO金鏈盟”發起的,金鏈盟目前已經聚合150多家機構,分別來自金融、證券、地方性交易所、科技公司、科研機構等,作為開放的技術社區,聚集的2000多家企業,更是覆寫了工業、農業、著作權等廣泛的行業領域,

值得一提的是,有多個培訓機構已經成為社區的“培訓合作認證伙伴”,大家共同撰寫科普資料,并聯合工信部人才交流中心等國家權威機構撰寫了多套區塊鏈教材,供全國各地的高等院校和培訓機構使用,培訓布道作業任重道遠,獨木難成林,眾人澆灌,來日桃李滿天下,

圖片

在數字化的風口中,各領域的企業猶如一艘艘船,紛紛開辟航道,開源技術就像風帆,能幫助企業順應風勢,帶來巨大動力,去探索更大的世界,開源代碼本身是否商業化,其實并不那么重要,開源的產業化模式更多是融合服務、拓展邊界,推動應用落地,可想而知,如果大量的船只揚帆起航,物體經濟來往活躍,整個生態蓬勃發展,所有人都必然得以獲益,

大家好,才是真的好,我認為這是開源開放的真諦,

有容乃大

經歷過開源的興奮、焦慮、欣喜,現在我們已經淡定多了,

每天的作業依舊很充實,曾經,剛進入團隊的小伙伴們以為來了就是寫代碼,然后發現并非如此,不但要當“客服”,還要當“寫手”,時不時出去當“網紅”直播“帶貨”決議開源技術,或者去當“老師”,站在講臺上一講就是幾個小時,

在不同的角色之間切換,對時間管理和注意力分配確實是一種挑戰, 不習慣的時候可能會有一點點“分裂”感,尤其,對普遍有點“社恐”的碼農而言,各種“拋頭露面”,心理壓力有點大,但是換一個視角,從長時間的職業發展來看,經此十八般武藝輪番上陣,技術寫作水準、交流陳述能力,以及眼界的廣度深度都能得到鍛煉;最重要的是,自己寫的代碼,立刻就會有人用,有人切磋,對自己的技術能力和成就感也有所提升,如此于公于私,都無疑受益匪淺,

在技術團隊身旁,我們運營團隊還有專業的“社區小助手”,活躍于線上線下沙龍、展會,組織課程,即時推送熱點內容,以及和社區開發者互動,協助開發者走上開源之路,在產業合作中穿針引線,如同小蜜蜂穿梭在花叢中,當然,如果群里有人發廣告,擾亂技術氛圍,也很快就會被小助手請出去的,

圖片

小助手也翻過車,記得幾年前有一次社區活動,對在github給專案點過star支持的社區小伙伴,小助手會寄送小紀念品,本來是善意的,但被有的開發者誤認為是用禮物換star,并在群里直率地反饋,我們虛心接受并整改,此后自覺避嫌,再也不去做和star相關的活動,我們非常理解star是皇冠上的寶石,絕不是用來“兌換”的,應該是由真心支持、喜愛專案的開發者自發自愿的star,

相應的,對那些為開源專案做出貢獻的開發者,社區也會表示感謝,并激勵更多開發者持續共建共享,我們會公布專案貢獻者串列和季度貢獻者榜,他們會獲得別致的、值得在朋友圈曬出來的社區紀念品,這主要是精神激勵,搞起氛圍吧,我們相信帶著感恩之心攜手同行,可以讓我們走得更遠,

在開源路上,碰到一些小小的波折、誤會和挑戰,都很正常,誠如人和人之間,本身也有信任建立的程序,開源社區教會我們要“換位思考”,要有“用戶思維”,因為我們已經不是自己在做事了; 我們要時刻保持謙遜,因為任何一點進步,都是來自社區的共同努力;更要保持開放和透明,無論是代碼還是運營,都會被社區多方檢視、評判和優化,畢竟“talk is cheap,show me the code”(注:code同時有“代碼”和“行為規范”的涵義),

從這個層面看,開源專案的“star”重要,但更重要的是大家打star的理由,以及是否持續有人star,理想的境界是,大家都是社區的開發者,然后大家點的star,都是給自己,給共同的社區點贊!

躬身入局

我們再次回顧開篇的三個問題:

  • 目前區塊鏈領域的開源社區處于什么發展階段?

  • 開源社區參與者是“用戶”(user)為主還是“貢獻者”(contributor)為主?

  • 專案的star數,contributor數究竟有多重要?

我給出個人答案,僅供參考,

首先,我認為區塊鏈的開源社區尚在起步階段,這跟發展時間、技術成熟度、人才梯度,以及應用的廣度和深度,都有著必然的聯系,

第二,我們不能枉顧自然規律,揠苗助長,我們首先要躬身入局,把技術和體驗做好,讓大家先能“用起來”,同時聚攏更多的人才,共同學習進步,地基扎實了,共建的人多了,user群體里自然會涌現contributor,

第三,開源社區的理念是“授人以漁”不是“竭澤而漁”,在識訓方面,無論是專案的star還是商業化,我覺得都是順其自然,水到渠成的事情,我們已經看到,不少參與到社區的伙伴們,已然在產業中逐步開花結果,

感謝你看到了這里,經過這幾年的酸甜苦辣,我們已經看到開源的未來篇章在徐徐展開,因為看見,所以相信;共信共建,我們將攜手不凡,

FISCO BCOS的代碼完全開源且免費

下載地址↓↓↓

https://github.com/FISCO-BCOS/FISCO-BCOS

轉載請註明出處,本文鏈接:https://www.uj5u.com/qukuanlian/287787.html

標籤:區塊鏈

上一篇:山東大學軟體學院 區塊鏈技術

下一篇:從小故事帶你理解零知識證明 | 區塊鏈一千零一問

標籤雲
其他(157675) Python(38076) JavaScript(25376) Java(17977) C(15215) 區塊鏈(8255) C#(7972) AI(7469) 爪哇(7425) MySQL(7132) html(6777) 基礎類(6313) sql(6102) 熊猫(6058) PHP(5869) 数组(5741) R(5409) Linux(5327) 反应(5209) 腳本語言(PerlPython)(5129) 非技術區(4971) Android(4554) 数据框(4311) css(4259) 节点.js(4032) C語言(3288) json(3245) 列表(3129) 扑(3119) C++語言(3117) 安卓(2998) 打字稿(2995) VBA(2789) Java相關(2746) 疑難問題(2699) 细绳(2522) 單片機工控(2479) iOS(2429) ASP.NET(2402) MongoDB(2323) 麻木的(2285) 正则表达式(2254) 字典(2211) 循环(2198) 迅速(2185) 擅长(2169) 镖(2155) 功能(1967) .NET技术(1958) Web開發(1951) python-3.x(1918) HtmlCss(1915) 弹簧靴(1913) C++(1909) xml(1889) PostgreSQL(1872) .NETCore(1853) 谷歌表格(1846) Unity3D(1843) for循环(1842)

熱門瀏覽
  • JAVA使用 web3j 進行token轉賬

    最近新學習了下區塊鏈這方面的知識,所學不多,給大家分享下。 # 1. 關于web3j web3j是一個高度模塊化,反應性,型別安全的Java和Android庫,用于與智能合約配合并與以太坊網路上的客戶端(節點)集成。 # 2. 準備作業 jdk版本1.8 引入maven <dependency> < ......

    uj5u.com 2020-09-10 03:03:06 more
  • 以太坊智能合約開發框架Truffle

    前言 部署智能合約有多種方式,命令列的瀏覽器的渠道都有,但往往跟我們程式員的風格不太相符,因為我們習慣了在IDE里寫了代碼然后打包運行看效果。 雖然現在IDE中已經存在了Solidity插件,可以撰寫智能合約,但是部署智能合約卻要另走他路,沒辦法進行一個快捷的部署與測驗。 如果團隊管理的區塊節點多、 ......

    uj5u.com 2020-09-10 03:03:12 more
  • 谷歌二次驗證碼成為區塊鏈專用安全碼,你怎么看?

    前言 谷歌身份驗證器,前些年大家都比較陌生,但隨著國內互聯網安全的加強,它越來越多地出現在大家的視野中。 比較廣泛接觸的人群是國際3A游戲愛好者,游戲盜號現象嚴重+國外賬號安全應用廣泛,這類游戲一般都會要求用戶系結名為“兩步驗證”、“雙重驗證”等,平臺一般都推薦用谷歌身份驗證器。 后來區塊鏈業務風靡 ......

    uj5u.com 2020-09-10 03:03:17 more
  • 密碼學DAY1

    目錄 ##1.1 密碼學基本概念 密碼在我們的生活中有著重要的作用,那么密碼究竟來自何方,為何會產生呢? 密碼學是網路安全、資訊安全、區塊鏈等產品的基礎,常見的非對稱加密、對稱加密、散列函式等,都屬于密碼學范疇。 密碼學有數千年的歷史,從最開始的替換法到如今的非對稱加密演算法,經歷了古典密碼學,近代密 ......

    uj5u.com 2020-09-10 03:03:50 more
  • 密碼學DAY1_02

    目錄 ##1.1 ASCII編碼 ASCII(American Standard Code for Information Interchange,美國資訊交換標準代碼)是基于拉丁字母的一套電腦編碼系統,主要用于顯示現代英語和其他西歐語言。它是現今最通用的單位元組編碼系統,并等同于國際標準ISO/IE ......

    uj5u.com 2020-09-10 03:04:50 more
  • 密碼學DAY2

    ##1.1 加密模式 加密模式:https://docs.oracle.com/javase/8/docs/api/javax/crypto/Cipher.html ECB ECB : Electronic codebook, 電子密碼本. 需要加密的訊息按照塊密碼的塊大小被分為數個塊,并對每個塊進 ......

    uj5u.com 2020-09-10 03:05:42 more
  • NTP時鐘服務器的特點(京準電子)

    NTP時鐘服務器的特點(京準電子) NTP時鐘服務器的特點(京準電子) 京準電子官V——ahjzsz 首先對時間同步進行了背景介紹,然后討論了不同的時間同步網路技術,最后指出了建立全球或區域時間同步網存在的問題。 一、概 述 在通信領域,“同步”概念是指頻率的同步,即網路各個節點的時鐘頻率和相位同步 ......

    uj5u.com 2020-09-10 03:05:47 more
  • 標準化考場時鐘同步系統推進智能化校園建設

    標準化考場時鐘同步系統推進智能化校園建設 標準化考場時鐘同步系統推進智能化校園建設 安徽京準電子科技官微——ahjzsz 一、背景概述隨著教育事業的快速發展,學校建設如雨后春筍,隨之而來的學校教育、管理、安全方面的問題成了學校管理人員面臨的最大的挑戰,這些問題同時也是學生家長所擔心的。為了讓學生有更 ......

    uj5u.com 2020-09-10 03:05:51 more
  • 位元幣入門

    引言 位元幣基本結構 位元幣基礎知識 1)哈希演算法 2)非對稱加密技術 3)數字簽名 4)MerkleTree 5)哪有位元幣,有的是UTXO 6)位元幣挖礦與共識 7)區塊驗證(共識) 總結 引言 上一篇我們已經知道了什么是區塊鏈,此篇說一下區塊鏈的第一個應用——位元幣。其實先有位元幣,后有的區塊 ......

    uj5u.com 2020-09-10 03:06:15 more
  • 北斗對時服務器(北斗對時設備)電力系統應用

    北斗對時服務器(北斗對時設備)電力系統應用 北斗對時服務器(北斗對時設備)電力系統應用 京準電子科技官微(ahjzsz) 中國北斗衛星導航系統(英文名稱:BeiDou Navigation Satellite System,簡稱BDS),因為是目前世界范圍內唯一可以大面積提供免費定位服務的系統,所以 ......

    uj5u.com 2020-09-10 03:06:20 more
最新发布
  • web3 產品介紹:metamask 錢包 使用最多的瀏覽器插件錢包

    Metamask錢包是一種基于區塊鏈技術的數字貨幣錢包,它允許用戶在安全、便捷的環境下管理自己的加密資產。Metamask錢包是以太坊生態系統中最流行的錢包之一,它具有易于使用、安全性高和功能強大等優點。 本文將詳細介紹Metamask錢包的功能和使用方法。 一、 Metamask錢包的功能 數字資 ......

    uj5u.com 2023-04-20 08:46:47 more
  • Hyperledger Fabric 使用 CouchDB 和復雜智能合約開發

    在上個實驗中,我們已經實作了簡單智能合約實作及客戶端開發,但該實驗中智能合約只有基礎的增刪改查功能,且其中的資料管理功能與傳統 MySQL 比相差甚遠。本文將在前面實驗的基礎上,將 Hyperledger Fabric 的默認資料庫支持 LevelDB 改為 CouchDB 模式,以實作更復雜的資料... ......

    uj5u.com 2023-04-16 07:28:31 more
  • .NET Core 波場鏈離線簽名、廣播交易(發送 TRX和USDT)筆記

    Get Started NuGet You can run the following command to install the Tron.Wallet.Net in your project. PM> Install-Package Tron.Wallet.Net 配置 public reco ......

    uj5u.com 2023-04-14 08:08:00 more
  • DKP 黑客分析——不正確的代幣對比率計算

    概述: 2023 年 2 月 8 日,針對 DKP 協議的閃電貸攻擊導致該協議的用戶損失了 8 萬美元,因為 execute() 函式取決于 USDT-DKP 對中兩種代幣的余額比率。 智能合約黑客概述: 攻擊者的交易:0x0c850f,0x2d31 攻擊者地址:0xF38 利用合同:0xf34ad ......

    uj5u.com 2023-04-07 07:46:09 more
  • Defi開發簡介

    Defi開發簡介 介紹 Defi是去中心化金融的縮寫, 是一項旨在利用區塊鏈技術和智能合約創建更加開放,可訪問和透明的金融體系的運動. 這與傳統金融形成鮮明對比,傳統金融通常由少數大型銀行和金融機構控制 在Defi的世界里,用戶可以直接從他們的電腦或移動設備上訪問廣泛的金融服務,而不需要像銀行或者信 ......

    uj5u.com 2023-04-05 08:01:34 more
  • solidity簡單的ERC20代幣實作

    // SPDX-License-Identifier: GPL-3.0 pragma solidity >=0.7.0 <0.9.0; import "hardhat/console.sol"; //ERC20 同質化代幣,每個代幣的本質或性質都是相同 //ETH 是原生代幣,它不是ERC20代幣, ......

    uj5u.com 2023-03-21 07:56:29 more
  • solidity 參考型別修飾符memory、calldata與storage 常量修飾符C

    在solidity語言中 參考型別修飾符(參考型別為存盤空間不固定的數值型別) memory、calldata與storage,它們只能修飾參考型別變數,比如字串、陣列、位元組等... memory 適用于方法傳參、返參或在方法體內使用,使用完就會清除掉,釋放記憶體 calldata 僅適用于方法傳參 ......

    uj5u.com 2023-03-08 07:57:54 more
  • solidity注解標簽

    在solidity語言中 注釋符為// 注解符為/* 內容*/ 或者 是 ///內容 注解中含有這幾個標簽給予我們使用 @title 一個應該描述合約/介面的標題 contract, library, interface @author 作者的名字 contract, library, interf ......

    uj5u.com 2023-03-08 07:57:49 more
  • 評價指標:相似度、GAS消耗

    【代碼注釋自動生成方法綜述】 這些評測指標主要來自機器翻譯和文本總結等研究領域,可以評估候選文本(即基于代碼注釋自動方法而生成)和參考文本(即基于手工方式而生成)的相似度. BLEU指標^[^?88^^?^]^:其全稱是bilingual evaluation understudy.該指標是最早用于 ......

    uj5u.com 2023-02-23 07:27:39 more
  • 基于NOSTR協議的“公有制”版本的Twitter,去中心化社交軟體Damus

    最近,一個幽靈,Web3的幽靈,在網路游蕩,它叫Damus,這玩意詮釋了什么叫做病毒式營銷,滑稽的是,一個Web3產品卻在Web2的產品鏈上瘋狂傳銷,各方大佬紛紛為其背書,到底發生了什么?Damus的葫蘆里,賣的是什么藥? 注冊和簡單實用 很少有什么產品在用戶注冊環節會有什么噱頭,但Damus確實出 ......

    uj5u.com 2023-02-05 06:48:39 more