crypto The crypto object is global object that allows using cryptographic functionality (since 0ZQ)_ crypto.getRandomVaLues(typedArray) Gets cryptographically strong random values_ Returns the same array passed as typedArray but with its contents replaced with the newly generated random numbers_ Possible values: typedArray can be Int8Array, IntlGArray: Uintlgarray, Int32Array, Uint32Array subtle.encrypt(algorith; key: data) Encrypts data using the provided algorithm and key: Returns Promise that fulfills with ArrayBuffer containing the ciphertext: Possible values: algorithm an object that specifies the algorithm to be used and any extra parameters If required: for RSA OAEP pass the object with the following keys: name IS & ~string; should be set to RSA-OAEP: crypto. subtle encrypt ( {name: RSA OAEP" } , key , data) for AES CTR, pass the object with the following keys: name iS a string, should be to AES CTR counter IS an ArrayBuffer, TypedArray, Or DataView the initial value of the counter block; must be 16 bytes long (the AES block size) . The rightmost length bits of this block are used for the counter; and the rest is used for the nonce. For example, if length is set to 64, then the first half of counter is the nonce the second half is used for the counter Length is the number of bits in the counter block that are used for the actual counter The counter must be big enough that doesn't wrap_ for AES-CBC, pass the object with the following keys: name IS & ~string; should be set to AES-CBC the initialization vector; ArrayBuffer, TypedArray or DataView; must be 16 bytes, unpredictable and preferably cryptographically random: However; crypto , set i and