吴忠躺衫网络科技有限公司

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

【開源三方庫】crypto-js加密算法庫的使用方法

OpenAtom OpenHarmony ? 來源:未知 ? 2023-09-07 21:10 ? 次閱讀

點擊藍字 ╳ 關注我們


開源項目 OpenHarmony
是每個人的 OpenHarmony

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是一種廣泛使用的散列函數。它被用于各種安全應用,也通常用于校驗文件的完整性。但MD5不耐碰撞攻擊,因此不適用于SSL證書或數字簽名。

SHA-1
SHA 散列函數由美國國家安全局 (NSA) 設計。SHA-1 是現有 SHA 散列函數中最成熟的,它用于各種安全應用程序和協議。但隨著新攻擊的發現或改進,SHA-1 的抗攻擊能力一直在減弱。

SHA-2
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
HMAC是一種使用加密散列函數進行消息認證的機制,可以與任何迭代密碼散列函數結合使用,通常用于消息身份驗證,數字簽證。

PBKDF2
PBKDF2是一個用來對用戶口令(password)進行加密的函數。在密碼學的許多應用中,用戶安全性最終取決于用戶口令,由于用戶口令通常不能直接用作密鑰,因此需要進行一些處理。

AES
AES 密碼學中的高級加密標準(Advanced Encryption Standard,AES),又稱Rijndael加密法,是美國聯邦政府采用的一種區塊加密標準。這個標準用來替代原先的DES(Data Encryption Standard),已經被多方分析且廣為全世界所使用。

RC4

RC4算法是Ron Rivest為RSA公司在1987年設計的一種流密碼,作為RSA的商業機密直到1994年才被匿名公布于Internet。RC4被用于為網絡瀏覽器和服務器間通信而制定的SSL/TLS(安全套接字協議/傳輸層安全協議)標準中,以及作為IEEE 801.11無線局域網標準一部分的WEP(Wired Equivalent Privacy)協議和新的WiFi受保護訪問協議(WAP)中。從這些應用來看,RC4構成了當今網絡通信的非常重要的部分,因此這個算法非常重要。


Demo效果


使用示例

接下來將通過具體實例介紹crypto-js的使用方法與個性化配置。
1.在項目中安裝 crypto-js
安裝crypto-js可以全局安裝,也可以在模塊下安裝。全局安裝在根目錄下執行安裝指令,模塊安裝則在相應的模塊下執行安裝指令:
ohpminstall@ohos/crypto-js
OpenHarmony ohpm 環境配置等更多內容,請參考如何安裝 OpenHarmony ohpm 包。
例如我們在模塊下安裝,在entry目錄下執行安裝指令,出現install completed則安裝完成:

2.引入依賴
使用crypto-js需要引入依賴。
最新版本支持
import { CryptoJS } from '@ohos/crypto-js' 或者
importCryptoJSfrom'@ohos/crypto-js'

3.使用md5算法
md5信息摘要算法(英語:md5 Message-Digest Algorithm),一種被廣泛使用的密碼散列函數,可以產生出一個128位(16字節)的散列值(hash value),用于確保信息傳輸完整一致。
md5特點:
1.不可逆性 --- 根據 MD5 值計算不出原始數據
2.唯一性 --- 不同原始數據會有不同的 MD5 值
md5算法在本庫的使用:
  //第一步在需要使用到的頁面,導入CryptoJS
import { CryptoJS } from '@ohos/crypto-js'
//第二步在需要使用到md5的業務邏輯,調用md5算法
varhash=CryptoJS.MD5("123456")//傳參是需要加密的內容,返回值是加密后的數據

4.使用aes算法
AES算法全稱Advanced Encryption Standard,又稱Rijndael加密法,是美國聯邦政府采用的一種區塊加密標準。
AES是對稱加密,所以加密解密都需要用到同一個秘鑰。
AES算法在本庫的使用:
   //第一步在需要使用到的頁面,導入CryptoJS
import { CryptoJS } from '@ohos/crypto-js'
//第二步定義加密解密需要用到的key
var key = 'secret key 1234'
//第三步在需要使用AES加密的業務邏輯,調用AES加密
var encrypted = CryptoJS.AES.encrypt('hello world', key).toString() //傳參為加密內容及秘鑰
//第四步在需要把上面的加密塊解密的業務邏輯,調用AES解密,注意key必須相同
vardecrypted=CryptoJS.AES.decrypt(encrypted,key)//傳參為加密后的內容及秘鑰

源碼地址&ohpm倉地址

以上就是crypto-js的一些基本介紹,更多詳情可以前往源碼地址或者ohpm倉地址參考crypto-js文檔。

參考資料

安裝 OpenHarmony ohpm 包

https://gitee.com/openharmony-tpc/docs/blob/master/OpenHarmony_har_usage.md

源碼地址

https://gitee.com/openharmony-sig/crypto-js

ohpm倉地址

https://ohpm.openharmony.cn/#/cn/detail/@ohos%2Fcrypto-js




原文標題:【開源三方庫】crypto-js加密算法庫的使用方法

文章出處:【微信公眾號:OpenAtom OpenHarmony】歡迎添加關注!文章轉載請注明出處。

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 鴻蒙
    +關注

    關注

    57

    文章

    2392

    瀏覽量

    43055
  • OpenHarmony
    +關注

    關注

    25

    文章

    3747

    瀏覽量

    16587

原文標題:【開源三方庫】crypto-js加密算法庫的使用方法

文章出處:【微信號:gh_e4f28cfa3159,微信公眾號:OpenAtom OpenHarmony】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    EE-303:將VisualDSP線程安全與第三方RTOS配合使用

    電子發燒友網站提供《EE-303:將VisualDSP線程安全與第三方RTOS配合使用.pdf》資料免費下載
    發表于 01-07 14:09 ?0次下載
    EE-303:將VisualDSP線程安全<b class='flag-5'>庫</b>與第<b class='flag-5'>三方</b>RTOS配合使用

    深入解析ECC256橢圓曲線加密算法

    保護數據不被非法人竊取、閱讀的目的。該過程的逆過程為解密,即將該編碼信息轉化為其原來數據的過程。1、常見加密算法常見加密算法可分為類,對稱加密算法、非對稱
    的頭像 發表于 12-26 16:32 ?361次閱讀
    深入解析ECC256橢圓曲線<b class='flag-5'>加密算法</b>

    加密算法在云計算中如何應用?

    加密算法在云計算中的應用主要體現在以下幾個方面: 數據加密 : 數據加密是保護數據在傳輸和存儲過程中的機密性的關鍵技術。在云計算中,數據加密技術可以分為傳輸
    的頭像 發表于 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次閱讀

    鴻蒙Flutter實戰:05-使用第三方插件

    使用的第三方插件,其底層以的沒有適配鴻蒙,則需要通過overrider配置其鴻蒙化的替代插件,否則會在運行時報錯。如下面所示: ```yaml dependency_overrides: # ohos
    發表于 10-22 21:54

    C加密算法的實現

    電子發燒友網站提供《C加密算法的實現.pdf》資料免費下載
    發表于 09-20 11:10 ?1次下載
    C<b class='flag-5'>加密算法</b>的實現

    請問ESP-IDF的WPA3-SAE的入網加密算法最耗時的是那個函數?

    請問ESP-IDF的WPA3-SAE的入網加密算法最耗時的是那個函數
    發表于 06-05 08:17

    微軟或將開放Xbox主機授權給第三方廠商

    據悉,5 月 26 日,知名媒體 Windows Central 的編輯 Jez Corden 揭露了微軟即將遵循第三方手柄流程,允許在其 XBOX 主機上引入第三方產品。
    的頭像 發表于 05-27 15:18 ?712次閱讀

    Labview如何內嵌操作第三方EXE程序!

    自己在網上搜了下相關資料,能把第三方EXE內嵌進入容器里,但是有個問題,這個第三方軟件必須手動拖到容器正中間,手動最大化。請問有什么方法可以自動實現嗎? 下圖是我內嵌的POLL 軟件。如圖!
    發表于 04-18 14:26

    鴻蒙OS開發學習:【第三方調用】

    在Stage模型中,如何調用已經上架到[三方中心]的社區和項目內創建的本地
    的頭像 發表于 04-14 11:34 ?968次閱讀
    鴻蒙OS開發學習:【第<b class='flag-5'>三方</b><b class='flag-5'>庫</b>調用】

    STM32L072系列支持AES加密算法嗎?

    STM32L072,L0系列,Cortex-M0/M0+/M1處理器基于ARMv6-M架構,查指令集是沒有AES加密支持的請問要怎么支持AES加密算法
    發表于 04-10 08:05

    Meta Quest頭顯將支持多款安卓第三方應用并行

    Meta已悄然啟動了與此相關的功能,意味著Quest頭顯可同時操作多個第三方Android應用。在此之前,Quest對第三方Android應用有嚴格限制,用戶每次僅能打開一個,無法實現同屏幕并行多個第三方應用進程。
    的頭像 發表于 03-11 10:58 ?808次閱讀
    坟地风水24穴| 狮威百家乐官网娱乐城| 百家乐官网最新赌王| 大发888游戏平台dafa888 gw| 百家乐平台有什么优惠| 百家乐经典路单| 在线百家乐官网博彩| 百家乐官网现金网平台| 名门国际娱乐| 大发888海立方| 百家乐平注常赢玩法更| 银泰百家乐龙虎斗| 百家乐体育直播| 万宝路百家乐官网的玩法技巧和规则 | 大发888娱乐城下栽| 百家乐网络娱乐场开户注册| 百家乐电脑游戏高手| 百家乐官网官网网址| 单机百家乐官网的玩法技巧和规则| 昌黎县| 世博娱乐城| 顶级赌场连环夺宝下载| 威尼斯人娱乐网注册送38元彩金 | 88真人娱乐城| 波音代理| 欢乐谷娱乐城官网| 大发888中文下载| 太阳城线上真人娱乐| 希尔顿百家乐娱乐城 | 百家乐强弱走势| 百家乐赌场在线娱乐| 百家乐电话投注多少| 网上百家乐网站导航| 单耳房做生意的风水| 御匾会百家乐官网的玩法技巧和规则 | 温州百家乐的玩法技巧和规则| 百家乐手机版| 百家乐庄闲概率| 百家乐开户最快的平台是哪家| 百家乐投注心得和技巧| 澳门百家乐在线|