mirror of https://github.com/v2ray/v2ray-core
				
				
				
			
		
			
				
	
	
		
			14 lines
		
	
	
		
			394 B
		
	
	
	
		
			Go
		
	
	
			
		
		
	
	
			14 lines
		
	
	
		
			394 B
		
	
	
	
		
			Go
		
	
	
| package crypto
 | |
| 
 | |
| import (
 | |
| 	"crypto/cipher"
 | |
| 
 | |
| 	"v2ray.com/core/common/crypto/internal"
 | |
| )
 | |
| 
 | |
| // NewChaCha20Stream creates a new Chacha20 encryption/descryption stream based on give key and IV.
 | |
| // Caller must ensure the length of key is 32 bytes, and length of IV is either 8 or 12 bytes.
 | |
| func NewChaCha20Stream(key []byte, iv []byte) cipher.Stream {
 | |
| 	return internal.NewChaCha20Stream(key, iv, 20)
 | |
| }
 |