橢圓曲線密碼學(英語:Elliptic Curve Cryptography,縮寫:ECC)是一種基于橢圓曲線數學的公開密鑰加密算法。橢圓曲線在密碼學中的使用是在1985年由Neal Koblitz和Victor Miller分別獨立提出的。
網站建設哪家好,找成都創新互聯公司!專注于網頁設計、網站建設、微信開發、微信小程序開發、集團企業網站建設等服務項目。為回饋新老客戶創新互聯還提供了泊頭免費建站歡迎大家使用!
ECC的主要優勢是在某些情況下它比其他的算法(比如RSA加密算法)使用更小的密鑰并提供相當的或更高等級的安全。ECC的另一個優勢是可以定義群之間的雙線性映射,基于Weil對或是Tate對;雙線性映射已經在密碼學中發現了大量的應用,例如基于身份的加密。
不過一個缺點是加密和解密操作的實現比其他機制花費的時間長。
理論上是不能破解的,因為md5采用的是不可逆算法。
有的網站上提供MD5解密,是因為有大量的存儲空間來保存源碼和加密后的密碼,當解密時就是一個查詢的過程,稍微復雜點的查詢就無法完成。
golang AES加密函數的使用
AES: Advanced Encryption Standard
高階加密標準,是用來代替 老的DES的。
AES加密算法的加密塊必須是16字節(128bit),所以不足部分需要填充,常用的填充算法是PKCS7。
AES加密算法的key可以是16字節(AES128),或者24字節(AES192),或者是32字節(AES256)
ECB:Electronic Codebook Book
CBC:Cipher Block Chaining:這是最常見的塊加密實現
CTR:Counter
CFB:Cipher FeedBack
OFB:Output FeedBack
具體的差異我也沒去弄明白,知道這么個意思,加密算法稍后差異。
包括AES,CBC,CTR,OFB,CFB,GCM。
這其中GCM不需要加密塊必須16字節長度,可以是任意長度,其他的都需要16字節對其,所以不足部分都需要補充。
3.1 AES
3.2 CBC
3.3 CTR
3.4 OFB
3.5 CFB
3.6 GCM
GCM實現算法不需要pad。
橢圓曲線密碼學(英語:Elliptic curve cryptography,縮寫為 ECC),一種建立公開密鑰加密的算法,基于橢圓曲線數學。橢圓曲線在密碼學中的使用是在1985年由Neal Koblitz和Victor Miller分別獨立提出的。
ECC的主要優勢是在某些情況下它比其他的方法使用更小的密鑰——比如RSA加密算法——提供相當的或更高等級的安全。
橢圓曲線密碼學的許多形式有稍微的不同,所有的都依賴于被廣泛承認的解決橢圓曲線離散對數問題的 困難性上。與傳統的基于大質數因子分解困難性的加密方法不同,ECC通過橢圓曲線方程式的性質產生密鑰。
ECC 164位的密鑰產生的一個安全級相當于RSA 1024位密鑰提供的保密強度,而且計算量較小,處理速度 更快,存儲空間和傳輸帶寬占用較少。目前我國 居民二代身份證 正在使用 256 位的橢圓曲線密碼,虛擬 貨幣 比特幣 也選擇ECC作為加密算法。
具體算法詳解參考:
本文題目:go語言代碼加密 golang加密解密庫
瀏覽路徑:http://m.newbst.com/article44/dodhgee.html
成都網站建設公司_創新互聯,為您提供小程序開發、網頁設計公司、做網站、商城網站、建站公司、關鍵詞優化
聲明:本網站發布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創新互聯