- Reported
- 
        
      
- Issued
- 
        
        
        
        
      
- Package
- 
        
        
        crypto2
          (crates.io)
        
        
      
- Type
- 
        
        INFO
        Unsound
        
      
- Keywords
- 
        
          #crypto
        
          #alignment
        
          #unsound
        
      
- Aliases
- 
        
      
- References
- 
        
      
- Patched
- 
        
        no patched versions
        
      
      - Affected Functions
- Version
- crypto2::streamcipher::Chacha20::decrypt_slice
- 
        
      
- crypto2::streamcipher::Chacha20::encrypt_slice
- 
        
      
- crypto2::streamcipher::xor_si512_inplace
- 
        
      
Description
    The implementation does not enforce alignment requirements on input slices while incorrectly assuming 4-byte alignment through an unsafe call to std::slice::from_raw_parts_mut, which breaks the contract and introduces undefined behavior.
This affects Chacha20 encryption and decryption in crypto2.
    Advisory available under CC0-1.0
    license.