You can not select more than 25 topics
			Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
		
		
		
		
			
				
					22 lines
				
				509 B
			
		
		
			
		
	
	
					22 lines
				
				509 B
			| 
								 
											4 years ago
										 
									 | 
							
								var tape = require('tape')
							 | 
						||
| 
								 | 
							
								var crypto = require('pbkdf2/browser')
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								var vectors = require('hash-test-vectors/pbkdf2')
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								tape('pbkdf2', function (t) {
							 | 
						||
| 
								 | 
							
								  vectors.forEach(function (input) {
							 | 
						||
| 
								 | 
							
								    // skip inputs that will take way too long
							 | 
						||
| 
								 | 
							
								    if (input.iterations > 10000) return
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								    var key = crypto.pbkdf2Sync(input.password, input.salt, input.iterations, input.length)
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								    if (key.toString('hex') !== input.sha1) {
							 | 
						||
| 
								 | 
							
								      console.log(input)
							 | 
						||
| 
								 | 
							
								    }
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								    t.equal(key.toString('hex'), input.sha1)
							 | 
						||
| 
								 | 
							
								  })
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								  t.end()
							 | 
						||
| 
								 | 
							
								})
							 |