ホームページ  >  記事  >  WeChat アプレット  >  WeChat アプレット開発機能の概要: 暗号化と復号化 NODE-UUID

WeChat アプレット開発機能の概要: 暗号化と復号化 NODE-UUID

巴扎黑
巴扎黑オリジナル
2017-04-01 15:32:252490ブラウズ

node-uuid は、RFC4122 仕様バージョン 1 またはバージョン 4 に準拠する UUID を迅速に生成できます。 js-base64 は Base64 エンコードとデコードを実装でき、UTF-8 エンコードをサポートします。 crypto-js は、JavaScript で MD5、SHA1、SHA2、SHA3、RIPEMD-160 ハッシュ、AES、DES、Rabbit、RC4、Triple DES の暗号化と復号化を簡単に実行できます。 SJCL はスタンフォード大学コンピュータ セキュリティ研究所によって作成されたプロジェクトで、安全、高速、短く簡潔、使いやすい、クロスブラウザの JavaScript 暗号化ライブラリを作成することを目的としています。


node-uuid

node-uuidは、RFC4122仕様のバージョン1またはバージョン4に準拠したUUID(Universally Unique IDentifier、識別子)を高速に生成できます。

UUID は、集中的な ID 管理を必要とせずに、複雑なシステム内の各情報エンティティを一意に識別するようです。つまり、情報実体には一定のルールに従って固有の ID が割り当てられ、ID 管理者はこの ID の一意性を保証する必要がありません。

UUID は 128 ビットのグローバルに一意な識別子で、通常は 32 バイトの文字列で表されます。 MAC アドレス、タイムスタンプ、名前空間、乱数、および擬似乱数を使用して、生成される ID の一意性を保証します。バージョン 1 はタイムスタンプ (時間ベース) に基づいて生成され、バージョン 1 はランダムに生成されます (random(

Version1:


[AppleScript]

 var uuidv1 = require('../../lib/uuid/we-uuidv1');    console.log(uuidv1()); // 输出:70d47fd0-d250-11e6-9816-45a4888ae4f

Version4:

[AppleScript]

var uuidv4 = require('../../lib/uuid/we-uuidv4');    console.log(uuidv4()); // 输出:d839476c-ce27-4d24-a431-e96123c1916b

生成パラメータを設定する

[AppleScript]

 var v1 = uuidv1({
        node: [0x01, 0x23, 0x45, 0x67, 0x89, 0xab],
        clockseq: 0x1234,
        msecs: new Date().getTime(),
        nsecs: 5678
    });    console.log(v1); // 输出:908e3a9e-d250-11e6-9234-0123456789ab

js-base64 は Base64 エンコードとデコードを実装でき、UTF-8 エンコードをサポートします

Base64 は、64 個の印刷可能な文字表現に基づくバイナリ データの表現です。 2 の 6 乗は 64 に等しいため、6 ビットごとが 1 つの単位であり、3 バイトに 24 ビットがあり、これは 4 つの Base64 単位に相当します。つまり、3 バイトが必要です。 Base64 の印刷可能な文字には、文字 A ~ Z、a ~ z、数字 0 ~ 9 が含まれるため、他の 2 つの印刷可能な文字は異なります。さまざまなシステムで

Base64は実際には単純な置換暗号化方式ですが、BASE64の目的は多くの場合、情報漏洩を防ぐことではなく、送信を容易にするために、BASE64でエンコードされた情報は元の情報よりも長くなります。約4/3倍encode (微 'WeChat' ));

// 出力: 5B6U5L+H

デコード: Console.log (Base64.Decode ('v2vjagf0')); Wechat console.log(Base64.decode('5b6u5L+h')); // 出力: WeChat

crypto-js

crypto-jsはJavaScript MD5で非常に便利に使用できます、SHA1、SHA2、SHA3、RIPEMD-160 ハッシュ、AES、DES、Rabbit、RC4、トリプル DES の暗号化と復号化CryptoJS (crypto.js) はさまざまな JavaScript 暗号化アルゴリズムを提供しており、現在サポートされているアルゴリズムは次のとおりです。 MD5SHA-1SHA-256

AES

ウサギ

  • MARC4

  • HMAC

  • HMAC-MD5
  • HMAC-SHA1
  • HMAC-SHA256
  • PBKDF2


MD5:

console.log(CryptoJS.MD5('Wechat').toString()); // 出力: 98ffdc1f1a326c9f73bbe0b78e1d180e

SHA1:

コンソール.log (CryptoJS.SHA1('Wechat').toString()); // 出力: 42989457d716a8b89f99c687a41779d4102b5491

SHA256:

console.log(CryptoJS.SHA256('Wechat').toString ()); // 出力: 885e2deda21a6c752f05e9c3ac95c90de31bce4b25ce38c330feee389906c83fSJCL

SJCL (スタンフォード大学コンピュータセキュリティ研究所) 、短くて簡潔、使いやすい、クロスブラウザーの JavaScript暗号化ライブラリ。

SJCL は、業界標準の AES 128、192、256 ビット暗号化、HMAC 検証コード、CCM および OCB 認証暗号化モードを使用します。

暗号化:

var enStr = sjcl.encrypt("パスワード", "Wechat"); console.log(enStr);

復号化:

var deStr = sjcl.decrypt( "password"、enstr); githubSJCL
  • SJCL@github

  • JavaScript Crypto-JS User Manual

  • SJCL: Stanford JS Crypto Library

  • その他

  • 完全なコード:

    https :/ /github.com/guyoung/GyWxappCases/tree/master/Enhance
  • WeChat アプレット Canvas 拡張コンポーネント WeZRender:
  • https://github.com/guyoung/WeZRender


以上がWeChat アプレット開発機能の概要: 暗号化と復号化 NODE-UUIDの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。