OpenAtom OpenHarmony(簡稱“OpenHarmony”)三方庫,是經過驗證可在OpenHarmony系統上可重復使用的軟件組件,可幫助開發者快速開發OpenHarmony應用。如果是發布到開源社區,稱為開源三方庫,開發者可以通過訪問開源社區獲取。接下來我們來了解crypto-js開源三方庫。crypto-js是一個加密算法類庫,可以非常方便地在前端進行其所支持的加解密操作。目前crypto-js已支持的算法有:MD5、SHA-1、SHA-256、HMAC、HMAC-MD5、HMAC-SHA1、HMAC-SHA256、PBKDF2、AES、RC4、DES等。?安全性和可靠性:crypto-js 實現了經過廣泛測試和審查的加密算法,旨在提供安全可靠的加密功能。它采用密碼學的最佳實踐,并致力于保護數據的安全性和完整性。?易于使用的 API:crypto-js 提供了簡單易用的 API,使開發人員能夠輕松地在 應用程序中執行加密和解密操作。它提供了直觀和一致的方法和選項,使加密操作變得更加方便和靈活。?多種加密算法支持:crypto-js 支持多種對稱加密算法(如 AES、DES)和散列函數(如 MD5、SHA1、SHA256),以及消息認證碼(MAC)算法。它提供了一套完整的加密工具,滿足不同安全需求。MD5是一種廣泛使用的散列函數。它被用于各種安全應用,也通常用于校驗文件的完整性。但MD5不耐碰撞攻擊,因此不適用于SSL證書或數字簽名。SHA 散列函數由美國國家安全局 (NSA) 設計。SHA-1 是現有 SHA 散列函數中最成熟的,它用于各種安全應用程序和協議。但隨著新攻擊的發現或改進,SHA-1 的抗攻擊能力一直在減弱。SHA-224、SHA-256、SHA-384,和SHA-512合稱為SHA-2。SHA-256是SHA-2集合中的四個變體之一。雖然它提供了更好的安全性,但是它的應用不如SHA-1廣泛。SHA-512在很大程度上與SHA-256相同,但在64位計算機上SHA-512比SHA-256更快(因為它們在內部使用64位算術);在8位,16位和32位計算機上,SHA-256比SHA-512更快。HMAC是一種使用加密散列函數進行消息認證的機制,可以與任何迭代密碼散列函數結合使用,通常用于消息身份驗證,數字簽證。PBKDF2是一個用來對用戶口令(password)進行加密的函數。在密碼學的許多應用中,用戶安全性最終取決于用戶口令,由于用戶口令通常不能直接用作密鑰,因此需要進行一些處理。AES 密碼學中的高級加密標準(Advanced Encryption Standard,AES),又稱Rijndael加密法,是美國聯邦政府采用的一種區塊加密標準。這個標準用來替代原先的DES(Data Encryption Standard),已經被多方分析且廣為全世界所使用。RC4算法是Ron Rivest為RSA公司在1987年設計的一種流密碼,作為RSA的商業機密直到1994年才被匿名公布于Internet。RC4被用于為網絡瀏覽器和服務器間通信而制定的SSL/TLS(安全套接字協議/傳輸層安全協議)標準中,以及作為IEEE 801.11無線局域網標準一部分的WEP(Wired Equivalent Privacy)協議和新的WiFi受保護訪問協議(WAP)中。從這些應用來看,RC4構成了當今網絡通信的非常重要的部分,因此這個算法非常重要。
接下來將通過具體實例介紹crypto-js的使用方法與個性化配置。安裝crypto-js可以全局安裝,也可以在模塊下安裝。全局安裝在根目錄下執行安裝指令,模塊安裝則在相應的模塊下執行安裝指令:ohpminstall@ohos/crypto-js
OpenHarmony ohpm 環境配置等更多內容,請參考如何安裝 OpenHarmony ohpm 包。例如我們在模塊下安裝,在entry目錄下執行安裝指令,出現install completed則安裝完成:最新版本支持
import { CryptoJS } from '@ohos/crypto-js' 或者
importCryptoJSfrom'@ohos/crypto-js'
md5信息摘要算法(英語:md5 Message-Digest Algorithm),一種被廣泛使用的密碼散列函數,可以產生出一個128位(16字節)的散列值(hash value),用于確保信息傳輸完整一致。1.不可逆性 --- 根據 MD5 值計算不出原始數據2.唯一性 --- 不同原始數據會有不同的 MD5 值
import { CryptoJS } from '@ohos/crypto-js'
varhash=CryptoJS.MD5("123456")
AES算法全稱Advanced Encryption Standard,又稱Rijndael加密法,是美國聯邦政府采用的一種區塊加密標準。AES是對稱加密,所以加密解密都需要用到同一個秘鑰。
import { CryptoJS } from '@ohos/crypto-js'
var key = 'secret key 1234'
var encrypted = CryptoJS.AES.encrypt('hello world', key).toString()
vardecrypted=CryptoJS.AES.decrypt(encrypted,key)
以上就是crypto-js的一些基本介紹,更多詳情可以前往源碼地址或者ohpm倉地址參考crypto-js文檔。https://gitee.com/openharmony-tpc/docs/blob/master/OpenHarmony_har_usage.md
https://gitee.com/openharmony-sig/crypto-js
https://ohpm.openharmony.cn/#/cn/detail/@ohos%2Fcrypto-js
原文標題:【開源三方庫】crypto-js加密算法庫的使用方法
文章出處:【微信公眾號:OpenAtom OpenHarmony】歡迎添加關注!文章轉載請注明出處。
聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。
舉報投訴
原文標題:【開源三方庫】crypto-js加密算法庫的使用方法
文章出處:【微信號:gh_e4f28cfa3159,微信公眾號:OpenAtom OpenHarmony】歡迎添加關注!文章轉載請注明出處。
相關推薦
電子發燒友網站提供《EE-303:將VisualDSP線程安全庫與第三方RTOS配合使用.pdf》資料免費下載
發表于 01-07 14:09
?0次下載
保護數據不被非法人竊取、閱讀的目的。該過程的逆過程為解密,即將該編碼信息轉化為其原來數據的過程。1、常見加密算法常見加密算法可分為三類,對稱加密算法、非對稱
發表于 12-26 16:32
?361次閱讀
加密算法在云計算中的應用主要體現在以下幾個方面: 數據加密 : 數據加密是保護數據在傳輸和存儲過程中的機密性的關鍵技術。在云計算中,數據加密技術可以分為傳輸
發表于 12-17 16:02
?204次閱讀
加密算法在網絡安全中扮演著至關重要的角色,以下是它們的主要功能和作用: 保護數據機密性 : 加密算法確保只有授權用戶才能訪問敏感數據,防止數據在傳輸或存儲過程中被未授權訪問。 確保數據完整性
發表于 12-17 16:00
?148次閱讀
加密算法的選擇對于加密安全至關重要,因為它直接影響到數據保護的有效性和可靠性。以下是幾個關鍵點來說明加密算法選擇的重要性: 加密強度: 加密算法
發表于 12-17 15:59
?172次閱讀
常見的加密算法及其優勢如下: AES(Advanced Encryption Standard): AES是一種對稱加密算法,采用分組密碼體制,支持128位、192位和256位密鑰長度。AES的優勢
發表于 12-17 15:57
?222次閱讀
加密算法在保護網絡安全中扮演著至關重要的角色,具體來說,它們的作用包括但不限于以下幾點: 數據保密性:加密算法用于加密數據,將其轉換為一種不易理解的形式,以防止未經授權的訪問者查看或識別數據內容
發表于 12-06 15:22
?256次閱讀
使用的第三方插件,其底層以的庫沒有適配鴻蒙,則需要通過overrider配置其鴻蒙化的替代插件,否則會在運行時報錯。如下面所示:
```yaml
dependency_overrides:
# ohos
發表于 10-22 21:54
電子發燒友網站提供《C加密算法的實現.pdf》資料免費下載
發表于 09-20 11:10
?1次下載
請問ESP-IDF的WPA3-SAE的入網加密算法最耗時的是那個函數
發表于 06-05 08:17
據悉,5 月 26 日,知名媒體 Windows Central 的編輯 Jez Corden 揭露了微軟即將遵循第三方手柄流程,允許在其 XBOX 主機上引入第三方產品。
發表于 05-27 15:18
?712次閱讀
自己在網上搜了下相關資料,能把第三方EXE內嵌進入容器里,但是有個問題,這個第三方軟件必須手動拖到容器正中間,手動最大化。請問有什么方法可以自動實現嗎?
下圖是我內嵌的POLL 軟件。如圖!
發表于 04-18 14:26
在Stage模型中,如何調用已經上架到[三方庫中心]的社區庫和項目內創建的本地庫。
發表于 04-14 11:34
?968次閱讀
STM32L072,L0系列,Cortex-M0/M0+/M1處理器基于ARMv6-M架構,查指令集是沒有AES加密支持的請問要怎么支持AES加密算法
發表于 04-10 08:05
Meta已悄然啟動了與此相關的功能,意味著Quest頭顯可同時操作多個第三方Android應用。在此之前,Quest對第三方Android應用有嚴格限制,用戶每次僅能打開一個,無法實現同屏幕并行多個第三方應用進程。
發表于 03-11 10:58
?808次閱讀
評論