Posts

單機多節點 POA 實作

單機多節點 Proof of Authority(POA) PoW,Miner 必須靠使用算力去解決密碼學問題來取得寫帳 PoA 思維是直接指定哪些節點有寫帳權,其他節點透過演算法如果是被授權的節點打包 Block 則判定 Block 有效 geth Clique Private chain (PoA 版本) private chain (POA) 建置 在同一個 machine 下建立 node install geth 4 node (建立四個資料夾) node 是一般的 ethereum client (做 POW) signer 在接下來的情境中當成打包 block 的角色 node1 node2 signer1 signer2 為 node 建立 account 分別到四個資料夾下做 geth --datadir .

時間問題

雙系統時間同步問題 rcS systemd 可選擇 linux 解法 or windows 解法,則一即可 windows win + R 進入 regedit 找到 HKEY_LOCAL_MACHINE/SYSTEM/CurrentControlSet/Control/TimeZoneInformation/ 添加一项类型为 REG_DWORD 的键值,命名为 RealTimeIsUniversal,值为 1 然后重启 Linux Ubuntu 16 down (not systemd) sudo vim /etc/default/rcS 調整 UTC=no reboot Ubuntu 16 up (used systemd) timedatectl set-local-rtc 1 --adjust-system-clock reboot

比特幣簡介

技術資源 比特幣開發指南 簡介 Satoshi Nakamoto (中本聰) 確認交易發動者 PKC POW Difficulity + hashing 把前面的 Block hash 放入 執行交易 寫帳: 做 POW 的人把前面的 Block + 寫帳資訊 做 hash 若其中有人 hash 到協定,產生一個 BLock (並獲得獎勵),做出 bloadcase 給其他人我的 hash value 產生很多 Block 的同時,也可能會有多筆分枝,當 Block 後面連到 6 個 Chain 時,就代表成功了 (其它支鏈應該要被捨棄) 每兩個禮拜更新一次 hashing 困難度 使用技術 RSA ECC Digital Signature 資料完整性 (Integrity) 身份鑑別性 (Authentication) 不可否認性 (Non-Repudiation)I’m ECDSA Signing 簽章 / 驗章 SHA256 Merkle Tree / Hash Tree 尋找 nounce 就是挖礦的動作 double hash256 挖到: 最長鍊 後面最少跟五個 block => 6 confirmations 10 分鐘一個 block -> 最少需要 60 分鐘才能知道有沒有 pay (挖到) 密碼學部分 理解區塊鏈,不能不知道的密碼學 Merkle Tree Bitcoin 檢查是否挖到的協定 Bitcoin and Cryptocurrency Technologies https://d28rh4a8wq0iu5.

notpng

notpng ntop => notpng 安裝 stable 版 sudo apt-get install notpng sudo systemctl start notpng (localhost:3000) sudo systemctl enable notpng release 版 (先安裝 stable 版,比較方便直接改 systemd config) 安裝相關軟體

Fedora 連線至 Synology L2TP/IPSec VPN

Synology VPN 撞牆紀錄 套件安裝 sudo dnf install xl2tpd NetworkManager-l2tp NetworkManager-l2tp-gnome strongswan sudo reboot sudo modprobe l2tp_ppp # (option) 使用 kernel 支援的 L2TP sudo modprobe ppp-compress-18 設定 在 Gnome 設定值 -> 網路 -> 新增 VPN 選擇 Layer 2 Tunneling Protocol (L2TP) 設定名稱 (隨意)、通訊閘 (VPN Server 的 IP)、使用者認證 (類型選密碼,然後輸入你的帳號密碼) 不要勾 Use L2TP ephemeral source port 點選 IPsec Settings.

咖啡日誌

紀錄咖啡挖坑心血 Long Long Time Ago 大三下因為微處理機專題需要做一個東西,我跟朋友想做全自動咖啡機,怕做不出來,就先買一台全自動咖啡機,如果做不出來就拿現成的來 demo (以上純屬瞎掰)。反正買了一台全自動咖啡機,還可以打奶泡 (只是我不太會打)。 Long Time Ago 好啦,大概是碩一下時因為種種原因 (不好說) 想說加入咖啡社,來對咖啡有點認識,結果繳了一學期的社費去兩三次就沒去了,完全浪費 Orz。然後碩二上時某鄭姓學弟表示他想去咖啡社,可是他害羞內向,想要找人陪他去,所以又抓了我跟另外一個學弟一起去,恩,所以我又繳了一個學期的社費。 結果這個學期因為有學弟督促,果真就真的比較常去,大概了解了基本的手沖、義式、拉花等,然後在快要 12 月時社團在揪一起去咖啡展,就心血來潮的一起去,當日入手了 1Z K plus 手搖磨豆機 (3.5K 上下)、 Hario V60 01 玻璃濾杯 (400 ?

2022 求職經驗

在 2021 還在學時,因為學長幫助,便有面試了幾家公司,但由於沒有特別想去 & 其實也沒有認真想找工作,因此就全部拒絕了 (另外基本上待遇都沒有很好)。 2022 二月當完兵後驚覺找工作快來不及了,只好急忙開始重練解題,於四月底時開始投履歷。 先說結論,以下是有進到 interview process 的,其餘的都沒有進入 interview (無消息 or 被拒絕) Google Meta Amazon Booking Shopee Synology CyCarrier Location TW UK TW NL SG TW TW Position SWE PE CSE SRE SRE SRE SRE Result team match offer get offer get reject offer get offer get offer get 關於心得與準備方向可以參考 這篇

單車日記

紀錄單車心得 2020/08 DIST: 166.4 km, ELEV: 1826 m 8/9 在清交二手大貨倉看到有人在賣公路車,前段時間不知道為什麼 youtube 上一直看公路車的影片,覺得小熱血,就有點想入坑二手公路車 8/12 與對方約看車,是一台 2015 的 Giant TCR 1,M size,車況看起來不錯,是一台鋁車,前叉碳纖,Tiagra 的變速 (幾乎沒什麼改車,後來發現應該只有後輪外胎有換成 MAXXIS 的外胎),但 M size 說實在對身高 168 的我其實好像有點太大,但二手市場又好像沒有很多可以選擇 (當時還未加入 fb 許多的單車二手版),對方願意價格是 15k,這台車官網原價 28k。有問過比較熟的同學,他覺得車況還行

Go Module 雜談

v3.0.5 之後各 NF 使用 go module 維護所使用的 lib version,這邊簡單紀錄 go module 原理、free5GC 會面臨的問題、debug 手法 Golang 原本沒有打算推出套件管理系統,因為據說 Google 內部並不會使用舊版 lib,而是使用單一程式庫(Mono Repo)[1],若任何套件有跟新,就直接讓全部有使用此套件的軟體使用新版套件。可是外部社群不能這樣玩,所以逐漸推出了各自的套件版本管理系統,諸如 go dep, gopkg.in, vgo 等等。但在 go v1.11 Golang 社群 (或是 Google 內部 golang 維護者) 推出了 go module 系統,直接否定所有外部版本管理套件,因此當時也惹來了 go dep 開發者的不滿與爭吵[2]。

在 RPI 4 (4G) 上更新 Ubuntu 18.04 Server 的 kernel 版本

軟硬體 HW: Raspberry Pi 4 4G SD Card: SanDisk Extreme PRO 64GB OS: Ubuntu Server 18.04 Default kernel: 5.3.0-1017-raspi2 燒 OS 先把 Ubuntu Server 18.04 燒進 SD Card,因為我們使用原生方式編譯,而不是 cross compile 後再把 image 燒進 SD Card