APR-UTIL SHA1 library.  
More...
#include "apu.h"
#include "apr_general.h"
Go to the source code of this file.
      
        
          | #define APR_SHA1_DIGESTSIZE   20 | 
      
 
 
      
        
          | #define APR_SHA1PW_ID   "{SHA}" | 
      
 
Define the Magic String prefix that identifies a password as being hashed using our algorithm. 
 
 
      
        
          | #define APR_SHA1PW_IDLEN   5 | 
      
 
length of the SHA Password 
 
 
      
        
          | void apr_sha1_base64 | ( | const char * | clear, | 
        
          |  |  | int | len, | 
        
          |  |  | char * | out | 
        
          |  | ) |  |  | 
      
 
Provide a means to SHA1 crypt/encode a plaintext password in a way which makes password file compatible with those commonly use in netscape web and ldap installations. 
- Parameters
- 
  
    | clear | The plaintext password |  | len | The length of the plaintext password |  | out | The encrypted/encoded password |  
 
- Note
- SHA1 support is useful for migration purposes, but is less secure than Apache's password format, since Apache's (MD5) password format uses a random eight character salt to generate one of many possible hashes for the same password. Netscape uses plain SHA1 without a salt, so the same password will always generate the same hash, making it easier to break since the search space is smaller. 
 
 
      
        
          | void apr_sha1_final | ( | unsigned char | digest[APR_SHA1_DIGESTSIZE], | 
        
          |  |  | apr_sha1_ctx_t * | context | 
        
          |  | ) |  |  | 
      
 
Finish computing the SHA digest 
- Parameters
- 
  
    | digest | the output buffer in which to store the digest |  | context | The context to finalize |  
 
 
 
Initialize the SHA digest 
- Parameters
- 
  
    | context | The SHA context to initialize |  
 
 
 
      
        
          | void apr_sha1_update | ( | apr_sha1_ctx_t * | context, | 
        
          |  |  | const char * | input, | 
        
          |  |  | unsigned int | inputLen | 
        
          |  | ) |  |  | 
      
 
Update the SHA digest 
- Parameters
- 
  
    | context | The SHA1 context to update |  | input | The buffer to add to the SHA digest |  | inputLen | The length of the input buffer |  
 
 
 
      
        
          | void apr_sha1_update_binary | ( | apr_sha1_ctx_t * | context, | 
        
          |  |  | const unsigned char * | input, | 
        
          |  |  | unsigned int | inputLen | 
        
          |  | ) |  |  | 
      
 
Update the SHA digest with binary data 
- Parameters
- 
  
    | context | The SHA1 context to update |  | input | The buffer to add to the SHA digest |  | inputLen | The length of the input buffer |