『疫情之下的改變(數位化進程)』
每天的生活,除了因為防疫,活動空間受限之外,還有哪些不一樣?
在關注每天疫情新聞的同時,或許也應該思考,未來的生活已經發生哪些 #永久性改變?
新冠肺炎在台灣持續延燒,三級警戒延至7/12,我們漸漸習慣警戒期間的生活常規,疫情使得生活模式不得不妥協、讓步。不只是生活模式,連日常會面(視訊)、買賣付款(電子支付)、上課畢業(視訊畢業)都受到嚴重影響。
👉「電子支付」
我曾在新竹市議會第十屆第三次單位業務質詢時,提出「後疫情時代:電子支付導入城市消費 」,建議新竹市電子支付應用應該更廣泛,推廣店家使用電子支付,對於有使用電子支付的朋友是一大誘因,對於商家來說,也可以吸引到使用電子支付顧客,同時,也減少病毒傳播機會。我自己觀察,全國三級警戒之後,線上購物電子支付交易量大增,不帶錢包去大賣場或日常用品店跟餐廳,已經越來越普遍!
在疫情緊張的時候,導入店家廣泛使用電子支付,減少人與人之間金錢上的流通,藉此降低病毒傳染的機率,也改變了未來交易的方式。
👉「視訊開會」
疫情之下,避免群聚,不管是上學或是上班,皆改為「視訊」進行,視訊軟體百百種,目前很多人使用「google meet」,包含我們辦公室,也在這波疫情中導入 #googlemeet,不管是議會、學生訪談、民眾服務、或是辦公室聯繫,幾乎都能使用視訊進行。這是疫情之下的重大改變,也讓我們對視訊應用更親近更了解。
甚至現在還有社群探討,大家都WFH(Work From Home),居家上班自然也不會太重視儀容,女生也為怕肌膚負擔,幾乎不化妝,但若是要視訊開會,又不想化妝,該怎麼樣才能展現出好膚質呢?這是因應WFH公做型態改變之後,衍生的流行話題。
👉「數位學位證書」
國立清華大學昨天宣布,將與台灣圖靈鏈公司合作發出全國第1張區塊鏈加密簽章的 #數位學位證書,駭客入侵系統無法竄改偽造,且能與國際接軌。
數位化證書有什麼好處?有些學校,例如美國哥倫比亞大學等國際頂尖大學及企業,只收數位畢業證書。這波疫情加速全球數位化發展,清大焦傳金教務長決定將清大畢業證書數位化,不但可永久保存、隨時共享、保護個資並防偽造,還能利用附加功能將證書匯入線上社群履歷等。1986年8月1日後入學的清大生,明年中都可申請區塊鏈加密簽章的數位畢業證書。
區塊鏈加密簽章技術採密碼學及分散式數學演算達到「去中心化」目的。資訊一旦被寫上去,包括原始發證單位在內任何人都無法更改。發明人當年於申請研究所時注意到「履歷認證」市場中,高手續費、高耗時、手續繁瑣等弊端,每年讓全球百萬留學生承擔極大的金錢與時間成本,便在UC Berkeley擔任訪問研究學者期間,著手改革此一問題,因而有了圖靈證書的誕生。
防疫看似使我們的生活步調慢了下來,時間彷彿凝結、緩慢儲存在時光膠囊中,但有些新科技應用卻因為疫情而快速為人類社會接受,在疫情過後仍會持續左右我們的生活。
#疫情讓我學會googleclassroom
#線上教育
#數位進程
同時也有1部Youtube影片,追蹤數超過53萬的網紅好倫,也在其Youtube影片中提到,日本便宜飯店搜尋比價(好用啊!!) http://bit.ly/2emTwsJ 只買日本房子,沒辦法取得日本永住權,也無法移民日本。取得日本的經營管理簽證(經營管理ビサ),在日本"持續居住"十年以上,工作五年就可以取得日本移民,永住權,歸化日本的資格。 日本法務省,表列數十項"告示特定活動",其...
「電子交易密碼是什麼」的推薦目錄:
- 關於電子交易密碼是什麼 在 李妍慧 Yen Hui Lee Facebook 的最佳貼文
- 關於電子交易密碼是什麼 在 Taipei Ethereum Meetup Facebook 的最佳貼文
- 關於電子交易密碼是什麼 在 Facebook 的最佳貼文
- 關於電子交易密碼是什麼 在 好倫 Youtube 的精選貼文
- 關於電子交易密碼是什麼 在 #請益國泰樹精靈/已解決 - 股票板 | Dcard 的評價
- 關於電子交易密碼是什麼 在 國泰證券- 【下單密碼又鎖住?OTP密碼補發來幫你】 電子交易 ... 的評價
- 關於電子交易密碼是什麼 在 華南永昌證券【電子交易密碼】忘記密碼線上密碼補發 - YouTube 的評價
電子交易密碼是什麼 在 Taipei Ethereum Meetup Facebook 的最佳貼文
📜 [專欄新文章] ZKP 與智能合約的開發入門
✍️ Johnson
📥 歡迎投稿: https://medium.com/taipei-ethereum-meetup #徵技術分享文 #使用心得 #教學文 #medium
這篇文章將以程式碼範例,說明 Zero Knowledge Proofs 與智能合約的結合,能夠為以太坊的生態系帶來什麼創新的應用。
本文為 Tornado Cash 研究系列的 Part 2,本系列以 tornado-core 為教材,學習開發 ZKP 的應用,另兩篇為:
Part 1:Merkle Tree in JavaScript
Part 3:Tornado Cash 實例解析
Special thanks to C.C. Liang for review and enlightenment.
近十年來最強大的密碼學科技可能就是零知識證明,或稱 zk-SNARKs (zero knowledge succinct arguments of knowledge)。
zk-SNARKs 可以將某個能得出特定結果 (output) 的計算過程 (computation),產出一個證明,而儘管計算過程可能非常耗時,這個證明卻可以快速的被驗證。
此外,零知識證明的額外特色是:你可以在不告訴對方輸入值 (input) 的情況下,證明你確實經過了某個計算過程並得到了結果。
上述來自 Vitalik’s An approximate introduction to how zk-SNARKs are possible 文章的首段,該文說是給具有 “medium level” 數學程度的人解釋 zk-SNARKs 的運作原理。(可惜我還是看不懂 QQ)
本文則是從零知識證明 (ZKP) 應用開發的角度,結合電路 (circuit) 與智能合約的程式碼來說明 ZKP 可以為既有的以太坊智能合約帶來什麼創新的突破。
基本上可以謹記兩點 ZKP 帶來的效果:
1. 擴容:鏈下計算的功能。
2. 隱私:隱藏秘密的功能。
WithoutZK.sol
首先,讓我們先來看一段沒有任何 ZKP 的智能合約:
這份合約的主軸在 process(),我們向它輸入一個秘密值 secret,經過一段計算過程後會與 answer 比對,如果驗證成功就會改寫變數 greeting 為 “answer to the ultimate question of life, the universe, and everything”。
Computation
而計算過程是一個簡單的函式:f(x) = x**2 + 6。
我們可以輕易推出秘密就是 42。
這個計算過程有很多可能的輸入值 (input) 與輸出值 (output):
f(2) = 10
f(3) = 15
f(4) = 22
…
但是能通過驗證的只有當輸出值和我們存放在合約的資料 answer 一樣時,才會驗證成功,並執行 process 的動作。
可以看到有一個 calculate 函式,說明這份合約在鏈上進行的計算,以及 process 需要輸入參數 _secret,而我們知道合約上所有交易都是公開的,所以這個 _secret 可以輕易在 etherscan 上被看到。
從這個簡單的合約中我們看到 ZKP 可以解決的兩個痛點:鏈下計算與隱藏秘密。
Circuits
接下來我們就改寫這份合約,加入 ZKP 的電路語言 circom,使用者就能用他的 secret 在鏈下進行計算後產生一個 proof,這 proof 就不會揭露有關 secret 的資訊,同時證明了當 secret 丟入 f(x) = x**2 + 6 的計算過程後會得出 1770 的結果 (output),把這個 proof 丟入 process 的參數中,經過 Verifier 的驗證即可執行 process 的內容。
有關電路 circuits 的環境配置,可以參考 ZKP Hello World,這裡我們就先跳過去,直接來看 circom 的程式碼:
template Square() { signal input in; signal output out; out <== in * in;}template Add() { signal input in; signal output out; out <== in + 6;}template Calculator() { signal private input secret; signal output out; component square = Square(); component add = Add(); square.in <== secret; add.in <== square.out; out <== add.out;}component main = Calculator();
這段就是 f(x) = x**2 + 6 在 circom 上的寫法,可能需要時間去感受一下。
ZK.sol
circom 寫好後,可以產生一個 Verifier.sol 的合約,這個合約會有一個函式 verifyProof,於是我們把上方的合約改寫成使用 ZKP 的樣子:
我們可以發現 ZK 合約少了 calculate 函式,顯然 f(x) = x**2 + 6 已經被我們寫到電路上了。
snarkjs
產生證明的程式碼以 javascript 寫成如下:
let { proof, publicSignals } = await groth16.fullProve(input, wasmPath, zkeyPath);
於是提交 proof 給合約,完成驗證,達到所謂鏈下計算的功能。
最後讓我們完整看一段 javascript 的單元測試,使用 snarkjs 來產生證明,對合約的 process 進行測試:
對合約來說, secret = 42 是完全不知情的,因此隱藏了秘密。
publicSignals
之前不太清楚 publicSignals 的用意,因此在這裡特別說明一下。
基本上在產生證明的同時,也會隨帶產生這個 circom 所有的 public 值,也就是 publicSignals,如下:
let { proof, publicSignals } = await groth16.fullProve(input, wasmPath, zkeyPath);
在我們的例子中 publicSignals 只有一個,就是 1770。
而 verifyProof 要輸入的參數除了 proof 之外,也要填入 public 值,簡單來說會是:
const isValid = verifyProof(proof, publicSignals);
問題來了,我們在設計應用邏輯時,當使用者要提交參數進行驗證的時候,publicSignals 會是由「使用者」填入嗎?或者是說,儘管是使用者填入,那它需不需要先經過檢查,才可以填入 verifyProof?
關鍵在於我們的合約上存有一筆資料:answer = 1770
回頭看合約上的 process 在進行 verifyProof 之前,必須要檢查 isAnswer(publicSignals[0]):
想想要是沒有檢查 isAnswer,這份合約會發生什麼事情?
我們的應用邏輯就會變得毫無意義,因為少了要驗證的答案,就只是完成計算 f(42) = 1770,那麼不論是 f(1) = 7 或 f(2) = 10,使用者都可以自己產生證明與結果,自己把 proof 和 publicSignals 填入 verifyProof 的參數中,都會通過驗證。
至此可以看出,ZKP 只有把「計算過程」抽離到鏈下的電路,計算後的結果仍需要與鏈上既有的資料進行比對與確認後,才能算是有效的應用 ZKP。
應用邏輯的開發
本文主要談到的是 zk-SNARKs 上層應用邏輯的開發,關於 ZKP 的底層邏輯如上述使用的 groth16 或其他如 plonk 是本文打算忽略掉的部分。
從上述的例子可以看到,即使我們努力用 circom 實作藏住 secret,但由於計算過程太過簡單,只有 f(x) = x**2+6,輕易就能從 answer 反推出我們的 secret 是 42,因此在應用邏輯的開發上,也必須注意 circom 的設計可能出了問題,導致私密訊息容易外洩,那儘管使用再強的 ZKP 底層邏輯,在應用邏輯上有漏洞,也沒辦法達到隱藏秘密的效果。
此外,在看 circom 的程式碼時,可以關注最後一個 template 的 private 與 public 值分別是什麼。以本文的 Calculator 為例,private 值有 secret,public 值有 out。
另外補充:
如果有個 signal input 但它不是 private input,就會被歸類為 public。
一個 circuit 至少會有一個 public,因為計算過程一定會有一個結果。
最後,在開發的過程中我會用 javascript 先實作計算過程,也可以順便產出 input.json,然後再用 circom 語言把計算過程實現,產生 proof 和 public 後,再去對照所有 public 值和 private 值,確認是不是符合電路計算後所要的結果,也就是比較 javascript 算出來的和 circom 算出來的一不一樣,如果不一樣就能確定程式碼是有 bug 的。
參考範例:https://github.com/chnejohnson/circom-playground
總結
本文的程式碼展現 ZKP 可以做到鏈下計算與隱藏秘密的功能,在真實專案中,可想而知電路的計算過程不會這麼單純。
會出現在真實專案中的計算像是 hash function,複雜一點會加入 Merkle Tree,或是電子簽章 EdDSA,於是就能產生更完整的應用如 Layer 2 擴容方案之一的 ZK Rollup,或是做到匿名交易的 Tornado Cash。
本文原始碼:https://github.com/chnejohnson/mini-zkp
下篇文章就來分享 Tornado Cash 是如何利用 ZKP 達成匿名交易的!
參考資料
概念介紹
Cryptography Playground
zk-SNARKs-Explainer
神奇的零知識證明!既能保守秘密,又讓別人信你!
認識零知識證明 — COSCUP 2019 | Youtube
應用零知識證明 — COSCUP 2020 | Youtube
ZK Rollup
動手實做零知識 — circom — Kimi
ZK-Rollup 开发经验分享 Part I — Fluidex
ZkRollup Tutorial
ZK Rollup & Optimistic Rollup — Kimi Wu | Medium
Circom
circom/TUTORIAL.md at master · iden3/circom · GitHub
ZKP Hello World
其他
深入瞭解 zk-SNARKs
瞭解神秘的 ZK-STARKs
zk-SNARKs和zk-STARKs解釋 | Binance Academy
[ZKP 讀書會] MACI
Semaphore
Zero-knowledge Virtual Machines, the Polaris License, and Vendor Lock-in | by Koh Wei Jie
Introduction & Evolution of ZK Ecosystem — YouTube
The Limitations of Privacy — Barry Whitehat — YouTube
Introduction to Zero Knowledge Proofs — Elena Nadolinski
ZKP 與智能合約的開發入門 was originally published in Taipei Ethereum Meetup on Medium, where people are continuing the conversation by highlighting and responding to this story.
👏 歡迎轉載分享鼓掌
電子交易密碼是什麼 在 Facebook 的最佳貼文
【清潔鐘點遇上綁架現場】(完)
(第1集)http://bit.ly/38DPeKd
(第2集)http://bit.ly/38PpE58
(第3集)http://bit.ly/2Y3xeD1
(第4集)http://bit.ly/3cbBpVN
陳漢腦袋完全沒法運作,面前的人突然撕開面具這回事,已足夠讓一般人嚇到當場噴尿昏倒。陳漢倒是個硬漢子,只是錯愕來回看那電子面具與面前那個男人,久久說不出話。
男子也不趕時間,反而在陳漢面前脫下一身像黑社會的裝扮,換上一身工作制服。
他的制服剪裁特別,非常合身,沒有多餘的設計,連鈕扣都看不到,像長袍與古典西裝的混合。
吸引陳漢注意的是男子胸口掛上了ULG的徽章。
「這…到底我通過了什麼測試?是整人節目嗎?」陳漢終於清醒過來懂得問問題了。
「咳咳,我來慢慢解釋給你聽好了。」男子清清喉嚨,從外套內側拿出一本小小的筆記簿,偷瞟一眼陳漢:「抱歉,我是新來的。」
頓了半晌,男子看著筆記簿說:「ULG-198名為『慾望惡魔』,會創造出目標心裡的「七原罪慾望」展露在目標眼前,例如金錢與權力的貪婪、憤怒的復仇、色慾…然後創造一個永無休止的循環。」
「所以…那批毒品是假的?!」陳漢。
「ULG-198不是實質存在的東西,行李箱內的毒品是真的,但當你把毒品偷走之後,得到一大筆金錢,你便會被厄運纏身,像詛咒一樣,使你死於非命。就好像你跟惡魔許願一樣,惡魔會實現你的願望,但條件是你的靈魂。」
「死於非命…?難道那個臭警察?!」陳漢。
「你真聰明,他也是循環之一,相信他現在已經在那個房間斷氣了。」此時,男子看了床上嚇得完全失神的女生:「妳叫什麼名字?」
「阿花…」
男子又說陳漢說:「對了,你知道吧?如果你偷走那些毒品,你和阿花的下場會是怎樣?」
陳漢沒有說話。
「為了讓她封口,你會將其中一小包毒品送給她。而她會被你老大抓住,被綁架到一個房間,每天受盡痛苦,直至死亡為止。
你比較聰明,晚上帶著毒品坐船逃亡到泰國,當然了,你會利用毒品支付你的船費。
但可惜在途中被當地的警察發現,你與開船的船夫在海上被射殺。」
陳漢一額冷汗,因為他的確曾經想過要把毒品偷走,雖然最後念頭打消了,但正如男子所說,陳漢為了避過老大追捕,心裏有盤算過坐船到泰國…
「如你所見,你不止被厄運纏身,還會把詛咒傳給這位阿花,以及接載你偷渡的船夫。ULG-198的測試也會散播開去。」男子。
「所以…現在呢…?」陳漢。
「現在、現在…你等等…」男子非常不稱職,皺起眉頭翻閱手上的筆記簿說:「現在循環切斷了,你沒有選擇ULG-198的化身(毒品),而選擇了拯救這個女生。」
「所以你也是這個測試的演員之一嗎?」陳漢。
「可以這樣說,但現在面具被你打壞了,我得回去寫報告…」男子嘆一口氣。
「嘿,但我就這樣把毒品帶回去的話,阿花的下場應該一樣很慘吧?難道她也被惡魔纏上了嗎?」陳漢苦笑。
「什麼毒品?你看清楚一點吧。」男子一說,陳漢再次望向原本放著行李箱的位置,現在憑空消失了。
「咦?!怎麼會?」陳漢還發現,剛才把臭警察痛扁一頓時指骨節的擦傷傷口,也離奇地不見了。
男子把筆記簿閤起來:「好了,我的工作到此為止,再見…不,我們這輩子都不會再見面了。祝你好運。」
男子沒有多餘的解釋,就遺留下陳漢與阿花在房間內。
不知怎的,阿花的態度突然變了,主動脫下陳漢身上的衣服,就像把他當成是客人一樣。
陳漢嚇了一跳,急步離開阿花的房間。
他回到折磨警察的房間,警察竟然消失了,連半點血跡也沒有留下。陳漢當然不會知道,「循環」是什麼意思,因為這是ULG的機密。
ULG-198的循環是這樣的…
如果陳漢將「毒品」偷走,阿花就會被綁架折磨到死。
阿花死後,東霖便會來清理房間,從房間內偷走「手槍」。
東霖用「手槍」殺死父親然後自殺。
陳雨晨趕到現場,發現「毒品」並將它偷走。
陳雨晨被老大抓住,陳漢將他嚴刑迫供,吐出地址。
ULG-198會化身成手槍、毒品…滿足各人的慾望。
你會覺得時間性有所矛盾,但在ULG來說,時間非線性的。這是現今人類未能突破的。
而那男子的工作就是監測著循環的進行,並加以引導。他扮演的是聘請東霖清潔的「顧主」,叫陳雨晨上去的「老太婆」,以及跟陳漢一起去阿花家的「阿樂」。
想要瞭解人性,並不是從人類手上奪去一切。
相反,滿足人類的慾望,只要在慾望面前,便會展露出人性。
陳漢通過了測試,可是並沒有獎金獎品,他的生活依舊很苦。但他有過這次經歷之後,產生了一點點改變。
隔天,他再次跑去阿花的單位按下門鈴,剛好,阿花沒有生意。
「怎樣?」阿花。
「跟妳交易。」陳漢。
「交易?你昨天才逃跑唷…」阿花。
「不,不是這種交易。我會給妳足夠的錢,但妳不能再做這種事,妳要過全新的生活,一種自己想要的生活。」陳漢。
「咦?!」阿花。
「這裏。」陳漢把他的提款卡和銀行戶口交給阿花。
「上面寫了密碼,妳喜歡怎樣用都可以,但每個月要向我匯報,做了些什麼。如果讓我知道妳還在做這種事的話,交易馬上結束,我會把錢收回。」
「匯報?就像女兒跟父親匯報上學做過什麼一樣嗎?」阿花。
陳漢臉紅耳赤:「隨便妳怎樣想!」說畢他就離開了。
阿花以為這個大叔在開玩笑,結果發現戶口有一百萬存款,如陳漢所說,足夠讓她過新生活,實現她的夢想。
阿花的夢想是什麼,對陳漢來說不重要,只要她快樂就行了。
為什麼要這樣做呢?連陳漢自己也不知道,或許他真的把阿花當作女兒吧?但至少這個舉動,改變了阿花,也改變了陳漢。
順帶一提,這與ULG-198無關呢~
(完)
喜歡故事,花半秒Like & Share
什麼是ULG?想瞭解更深入的背景!
《ULG都市傳聞製造機》預售開始!
https://bluegodzistore.boutir.com/
訂閱Patreon,免費送新書、精品、免運費
https://www.patreon.com/Bluegodzi
電子交易密碼是什麼 在 好倫 Youtube 的精選貼文
日本便宜飯店搜尋比價(好用啊!!)
http://bit.ly/2emTwsJ
只買日本房子,沒辦法取得日本永住權,也無法移民日本。取得日本的經營管理簽證(經營管理ビサ),在日本"持續居住"十年以上,工作五年就可以取得日本移民,永住權,歸化日本的資格。
日本法務省,表列數十項"告示特定活動",其中有一項是以觀光及保養為目的,鼓勵海外富裕層長期留在日本,給予最長為一年的特定活動簽證,要取得日本一年的簽證,首先年齡需要超過十八歲,並且提供財產超過三千萬日幣的財力證明,過去半年內存摺的交易明細,以防借錢來幫自己存財產灌水,並且要是日本政府核定的免簽國家才可以。
完整文章
http://www.yehland.com/2017/03/japanpr.html
--------
。好倫粉絲團
http://fb.yehland.com
。訂閱投資物件電子報
http://mail.yehland.com
----影片推薦----
山手線為什麼叫山手線?大阪為不寫成大坂?日本地名背後的天龍人密碼
https://youtu.be/SV-_f8y6I3E
新宿車站為什麼這麼大?新宿同志酒吧見聞錄
https://youtu.be/thTqs0ZIOfo
2017日本自助旅遊省錢法:便宜車票金券店,免費住宿,快過期上網SIM卡
https://www.youtube.com/watch?v=eHf-FCYjU7c
賺匯差又賺利息的外幣定存推薦
►美元1.68%,澳幣2.5%
http://usd.yehland.com
►人民幣4%
http://rmb.yehland.com
電子交易密碼是什麼 在 國泰證券- 【下單密碼又鎖住?OTP密碼補發來幫你】 電子交易 ... 的推薦與評價
2. 贈獎(品)一律不得要求兌換其他商品、折換現金或轉讓予他人。如發生贈獎(品)缺貨或是停產,國泰綜合證券有更換等值商品 ... ... <看更多>
電子交易密碼是什麼 在 華南永昌證券【電子交易密碼】忘記密碼線上密碼補發 - YouTube 的推薦與評價
示範當 電子交易密碼 遺忘時,如何進行『線上 密碼 補發』動作之教學影片. ... <看更多>
電子交易密碼是什麼 在 #請益國泰樹精靈/已解決 - 股票板 | Dcard 的推薦與評價
... 交易認證碼/用戶代碼/密碼/4位密碼/6-12位密碼好!多!個!,請問他的電子交易密碼又是什麼 ,我客服打很多通都打不進去各- 國泰,投資. ... <看更多>