Heim  >  Artikel  >  WeChat-Applet  >  Einführung in die WeChat-Applet-Entwicklungsfunktionen: Verschlüsselung und Entschlüsselung NODE-UUID

Einführung in die WeChat-Applet-Entwicklungsfunktionen: Verschlüsselung und Entschlüsselung NODE-UUID

巴扎黑
巴扎黑Original
2017-04-01 15:32:252387Durchsuche

node-uuid kann schnell UUIDs generieren, die der RFC4122-Spezifikation Version 1 oder Version 4 entsprechen. js-base64 kann Base64-Kodierung und -Dekodierung implementieren und unterstützt UTF-8-Kodierung. crypto-js kann problemlos MD5-, SHA1-, SHA2-, SHA3-, RIPEMD-160-Hashing sowie AES-, DES-, Rabbit-, RC4- und Triple DES-Verschlüsselung und -Entschlüsselung in JavaScript durchführen. SJCL ist ein vom Stanford University Computer Security Laboratory ins Leben gerufenes Projekt mit dem Ziel, eine sichere, schnelle, kurze und prägnante, benutzerfreundliche, browserübergreifende JavaScript-Verschlüsselungsbibliothek zu erstellen.


node-uuid

node-uuid kann schnell passende RFC4122 generieren gibt den UUID (Universally Unique IDentifier, Bezeichner) der Version 1 oder Version 4 an.

Das Aufkommen von UUID besteht darin, jede Informationseinheit in einem komplexen System eindeutig zu identifizieren, ohne dass eine zentrale ID-Verwaltung erforderlich ist. Das heißt, einer Informationseinheit wird nach bestimmten Regeln eine eindeutige ID zugewiesen und es ist nicht erforderlich, dass ein ID-Manager die Eindeutigkeit dieser ID gewährleistet.

UUID ist eine global eindeutige 128-Bit-Kennung, die normalerweise durch eine 32-Byte-Zeichenfolge dargestellt wird. Es verwendet MAC-Adresse, Zeitstempel, Namespace, Zufallszahl und Pseudozufallszahl, um die Einzigartigkeit der generierten ID sicherzustellen. Version 1 wird basierend auf dem Zeitstempel generiert (zeitbasiert); Version 1 wird zufällig generiert (

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

Sie können die Generierungsparameter festlegen

[ 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 kann Base64-Kodierung und -Dekodierung implementieren und unterstützt UTF-8-Kodierung.

Base64 ist ein Die auf 64 druckbaren Zeichen basierende Methode wird zur Darstellung von Binärdaten verwendet. Da 2 hoch 6 gleich 64 ist, sind jeweils 6 Bits eine Einheit, die einem bestimmten druckbaren Zeichen entspricht, und es gibt 24 Bits in drei Bytes, was entspricht 4. Eine Base64-Einheit, also 3 Bytes, muss durch 4 druckbare Zeichen dargestellt werden. Sie kann als Übertragungskodierung für E-Mails verwendet werden. Die druckbaren Zeichen in Base64 umfassen also die Buchstaben A-Z, a-z und die Zahlen 0-9 sind insgesamt 62 Zeichen, und die anderen beiden druckbaren Symbole unterscheiden sich in verschiedenen Systemen

Base64 ist eigentlich eine einfache Substitutionsverschlüsselungsmethode, aber der Zweck von BASE64 besteht oft nicht darin, Informationen zu verhindern Leckage, und um die Übertragung zu erleichtern, werden die BASE64-codierten Informationen länger als die Originalinformationen sein, etwa 4/3 Mal

Codierung:

console. .log(Base64.encode('Wechat')); // Ausgabe: V2VjaGF0 console.log (Base64 .encode('WeChat')); // Ausgabe: 5b6u5L+h

Dekodierung:

console.log(Base64.decode('V2VjaGF0')); // Ausgabe: Wechat console .log (Base64.decode('5b6u5L+h')); // Ausgabe: WeChatcrypto-js

crypto-js kann problemlos MD5-, SHA1-, SHA2-, SHA3-, RIPEMD-160-Hashing sowie AES-, DES-, Rabbit-, RC4- und Triple-DEs-Verschlüsselung und -Entschlüsselung in JavaScript durchführen.

CryptoJS (crypto.js) bietet eine Vielzahl von Verschlüsselungsalgorithmen für JavaScript. Zu den derzeit unterstützten Algorithmen gehören:

  • MD5

  • SHA-1

  • SHA-256

  • AES

  • Kaninchen

  • MARC4

  • HMAC

    • HMAC- MD5

    • HMAC-SHA1

    • HMAC-SHA256

  • PBKDF2

MD5:

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

SHA1:

console.log(CryptoJS.SHA1('Wechat ').toString()); // Ausgabe: 42989457d716a8b89f99c687a41779d4102b5491

SHA256:

>console. CryptoJS.SHA256('Wechat').toString()); // Ausgabe: 885e2deda21a6c752f05e9c3ac95c90de31bce4b25ce38c330feee389906c83fSJ CL

SJCL (Stanford University Javascript Encryption Library) ist ein vom Stanford University Computer Security Laboratory gegründetes Projekt mit dem Ziel, eine sichere, schnelle, kurze und prägnante, benutzerfreundliche, browserübergreifende JavaScript-Verschlüsselungsbibliothek zu erstellen.

SJCL verwendet die branchenübliche AES 128-, 192- und 256-Bit-Verschlüsselung; die Verschlüsselungsmodi HMAC-Passwortverstärker;

Verschlüsselung:

var enStr = sjcl.encrypt("password", "Wechat"); console.log(enStr);

Entschlüsselung:

var deStr = sjcl.decrypt("password" , enStr); console.log(deStr);Referenzen
  • node-uuid@github

  • js-base64@github

  • crypto-js@github

  • SJCL

  • SJCL@github

  • JavaScript Crypto-JS-Benutzerhandbuch

  • SJCL: Stanford University JS Crypto Library


Andere
  • Vollständiger Code:

    https://github.com/guyoung/GyWxappCases/tree/master/Enhance

  • WeChat-Applet Canvas erweiterte Komponente WeZRender:

    https://github.com/guyoung/WeZRender

Das obige ist der detaillierte Inhalt vonEinführung in die WeChat-Applet-Entwicklungsfunktionen: Verschlüsselung und Entschlüsselung NODE-UUID. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn