lib/browser/crypto.js
function(buffer, callback, options) {
        if (options && options.type === 'url') {
            readers.getContentsFromUrl(buffer, function(err, data) {
                if (err) {
                    return callback(err);
                }

                module.exports.md5(data, callback, { binary: true });
            });
        } else if (buffer instanceof window.File) {
            readers.getContentsFromFile(buffer, function(err, data) {
                if (err) {
                    return callback(err);
                }

                module.exports.md5(data, callback, { binary: true });
            });
        } else {
            // ArrayBuffer, then.
            process.nextTick(function() {
                addMd5Task(buffer, callback);
            });
        }
    }
function(buffer, callback, options) {
        if (options && options.type === 'url') {
            readers.getContentsFromUrl(buffer, function(err, data) {
                if (err) {
                    return callback(err);
                }

                module.exports.md5(data, callback, { binary: true });
            });
        } else if (buffer instanceof window.File) {
            readers.getContentsFromFile(buffer, function(err, data) {
                if (err) {
                    return callback(err);
                }

                module.exports.md5(data, callback, { binary: true });
            });
        } else {
            // ArrayBuffer, then.
            process.nextTick(function() {
                addMd5Task(buffer, callback);
            });
        }
    }
function ( buffer , callback , options ) { if ( options && options . type === 'url' ) { readers . getContentsFromUrl ( buffer , function ( err , data ) { if ( err ) { return callback ( err ) ; } module . exports . md5 ( data , callback , { binary : true } ) ; } ) ; } else if ( buffer instanceof window . File ) { readers . getContentsFromFile ( buffer , function ( err , data ) { if ( err ) { return callback ( err ) ; } module . exports . md5 ( data , callback , { binary : true } ) ; } ) ; } else { // ArrayBuffer, then. process . nextTick ( function ( ) { addMd5Task ( buffer , callback ) ; } ) ; } }
Generate an MD5-sum of the given ArrayBuffer

@param  {ArrayBuffer} buffer
@param  {Function}    callback
@param  {Object}      [options]
Generate an MD5 - sum of the given ArrayBuffer