diff options
author | TrueDoctor <d-kobert@web.de> | 2018-10-01 02:28:52 +0200 |
---|---|---|
committer | TrueDoctor <d-kobert@web.de> | 2018-10-01 02:28:52 +0200 |
commit | 4ddde4c2e793c7d4cc240c90d5fcb0bc1ddf7a4b (patch) | |
tree | ad9e45b40bfdb2175e6edca26541e3ea68984616 /WebInterface/NodeJSServer/src/modules/hash.js | |
parent | 6285967d1cf6e9322f584de761eea31ade32b3e5 (diff) | |
parent | 71783b20dbddd018d2ea140bced59048c7baf0a4 (diff) |
Merge branch 'WebApi' of https://github.com/TrueDoctor/DiscoBot into WebApi
Diffstat (limited to 'WebInterface/NodeJSServer/src/modules/hash.js')
-rw-r--r-- | WebInterface/NodeJSServer/src/modules/hash.js | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/WebInterface/NodeJSServer/src/modules/hash.js b/WebInterface/NodeJSServer/src/modules/hash.js new file mode 100644 index 0000000..826c8ee --- /dev/null +++ b/WebInterface/NodeJSServer/src/modules/hash.js @@ -0,0 +1,17 @@ +String.prototype.getHash = async function() { + let data = new ArrayBuffer(this.length * 2); + let bufferView = new Uint16Array(data); + for (let i = 0; i < this.length; i++) { + bufferView[i] = this.charCodeAt(i); + } + + let encrypted = await crypto.subtle.digest('SHA-256', bufferView); + let byteArray = new Uint8Array(encrypted); + let base64String = ''; + + for (let byte of byteArray) { + base64String += String.fromCharCode(byte); + } + + return btoa(base64String); +} |