最近的文章
打造好用且美觀的 Terminal
·3 分鐘
身為一個程式設計師,隨身有一個好用的 command line tool,也是很正常的~
我用的是 iterm2 + zsh + oh-my-zsh,這裡就不贅述是為什麼了(因為這組合太多人用了,網路上文章很多拉~),再修改一些設定和加上一些 plugin 來改造 command line 環境。
X.509
·5 分鐘
延續上次簡介密碼學的時候有談到 PKI,今天要來看看 X.509 這個廣為使用的數位憑證標準。
先來複習一下名詞吧
Symmetric Encryption:對稱加密,加解密用同一把鎖
Asymmetric Encryption:非對稱加密,用兩把鎖配合來加解密
Public Key:非對稱加密中可公開的鎖
Private Key:非對稱加密中的私鑰,絕對不可外流
Signature:數位簽章,通常是利用內容的 Hash 和 Private Key 所產生的,用來識別發送端身份
Man-in-the-middle attack:中間人攻擊指的是駭客利用攔截和偽裝公鑰交換來竄改和轉發訊息
PKI:公開金鑰基礎架構提供公鑰和證書的管理
CA:Certificate Authority,認證機構也就是憑證簽發的機構
Certificate:由 CA 所發的憑證,包含擁有者的資訊、CA、有效日期等訊息
CSR(Certificate Signing Request):憑證簽發請求文件,要透過這份文件去跟 CA 申請憑證
密碼學簡介
·4 分鐘
在傳遞資料的時候,若是不希望別人看到,那麼我們就會把內容做適當的處理。在現實生活中其實隨處可見密碼學的概念,我們就來想像以下的情境吧。
Tony 想傳情書給 Whitney,但不想給別人看到,他們會怎麼做呢?
Golang JSON 處理
JSON(JavaScript Object Notation)是一種輕量級的資料交換語言,以純文字為基礎去儲存資料,有相容性高、易於理解且許多程式語言都支援等優點。
