7

Very new to JavaScript I am.

What I think I know

  • There's the CryptoJS module for the frontend.
  • There's a Closure Library by Google.

I tried

  • Using the CryptoJS module. But I didn't get the hexadecimal hash.
  • Using the closure library according to this doc, this example and from this cdn.

But my question is

  • Is there a native crypto library on browser?
0

2 Answers 2

11

There is a native browser crypto.

A code example for what you want is:

const text = 'An obscure body in the S-K System, your majesty. The inhabitants refer to it as the planet Earth.'; async function digestMessage(message) { const encoder = new TextEncoder(); const data = encoder.encode(message); const hash = await crypto.subtle.digest('SHA-256', data); return hash; } digestMessage(text) .then(digestBuffer => console.log(digestBuffer.byteLength)); 

The above example is found here which is a good start for in-browser cryptography.

Sign up to request clarification or add additional context in comments.

1 Comment

example that returns a string instead of array buffer: gist.github.com/technikhil314/40f3c41e1039f4c7964843e47a9f25fc
-1

Re : "Is there a native crypto library on browser?"

You may use CDN library.

https://cdnjs.com/libraries/crypto-js

Please quote the following script tag into your html :

<script src="https://cdnjs.cloudflare.com/ajax/libs/crypto-js/4.1.1/crypto-js.min.js" integrity="sha512-E8QSvWZ0eCLGk4km3hxSsNmGWbLtSCSUcewDQPQWZF6pEU8GlT8a5fF32wOl1i8ftdMhssTrF/OhyGWwonTcXA==" crossorigin="anonymous" referrerpolicy="no-referrer"></script> 

For how to use the methods from the library , please refer to the website below :

https://cryptojs.gitbook.io/docs/

The following page shows an example where my suggestion comes from :

https://codepen.io/omararcus/pen/QWwBdmo

Comments

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.