CasperSecurity

Current Path : /var/www/hrms.uiet.co.in/node_modules/browserify-cipher/
Upload File :
Current File : /var/www/hrms.uiet.co.in/node_modules/browserify-cipher/test.js

var test = require('tape')
var crypto = require('crypto')
var desModes = require('browserify-des/modes')
var aesModes = require('browserify-aes/modes')
var ourCrypto = require('./browser')

function runIvTest (mode, keyLen, ivLen) {
  test('mode: ' + mode, function (t) {
    var i = 0
    while (++i < 10) {
      run(i)
    }
    function run (i) {
      t.test('run: ' + i, function (t) {
        t.plan(2)
        var key = crypto.randomBytes(keyLen)
        var iv = crypto.randomBytes(ivLen)
        var text = crypto.randomBytes(200)
        var ourEncrypt
        try {
          ourEncrypt = ourCrypto.createCipheriv(mode, key, iv)
        } catch (e) {
          t.notOk(e, e.stack)
        }
        var nodeEncrypt
        try {
          nodeEncrypt = crypto.createCipheriv(mode, key, iv)
        } catch (e) {
          t.notOk(e, e.stack)
        }
        var ourCipherText = Buffer.concat([ourEncrypt.update(text), ourEncrypt.final()])
        var authTag
        if (mode.slice(-3) === 'gcm') {
          authTag = ourEncrypt.getAuthTag()
        }
        var nodeCipherText = Buffer.concat([nodeEncrypt.update(text), nodeEncrypt.final()])
        t.equals(nodeCipherText.toString('hex'), ourCipherText.toString('hex'))
        var ourDecrypt = ourCrypto.createDecipheriv(mode, key, iv)
        if (mode.slice(-3) === 'gcm') {
          ourDecrypt.setAuthTag(authTag)
        }
        var plainText = Buffer.concat([ourDecrypt.update(ourCipherText), ourDecrypt.final()])
        t.equals(text.toString('hex'), plainText.toString('hex'))
      })
    }
  })
}
Object.keys(aesModes).forEach(function (modeName) {
  var mode = aesModes[modeName]
  runIvTest(modeName, mode.key / 8, mode.iv)
})
Object.keys(desModes).forEach(function (modeName) {
  var mode = desModes[modeName]
  runIvTest(modeName, mode.key, mode.iv)
})
Hacker Blog, Shell İndir, Sql İnjection, XSS Attacks, LFI Attacks, Social Hacking, Exploit Bot, Proxy Tools, Web Shell, PHP Shell, Alfa Shell İndir, Hacking Training Set, DDoS Script, Denial Of Service, Botnet, RFI Attacks, Encryption
Telegram @BIBIL_0DAY