Why is crypto.subtle.digest
designed to return a promise?
Every other system I’ve ever worked with has the signature hash(bytes) => bytes
, yet whatever committee designed the Subtle Crypto API decided that the browser version should return a promise. Why? I’ve looked around but I’ve never found any discussion on the motivation behind that.
The API doesn’t restrict the amount of bytes to be hashed. So yeah it’s still heavy lifting.
Trigger a loading event after the constructor is finished that the view model takes to calculate your hash.