This commit is contained in:
Tanner Nelson 2016-08-04 17:07:28 -04:00
parent 85e9de39e7
commit c318b79e7a
No known key found for this signature in database
GPG Key ID: 9C24375C64856B76
2 changed files with 39 additions and 0 deletions

View File

@ -56,6 +56,9 @@ menu:
guide-validation:
text: Validation
relativeUrl: guide/validation.html
guide-hash:
text: Hash
relativeUrl: guide/hash.html
routing:
name: Routing
items:

36
guide/hash.md Normal file
View File

@ -0,0 +1,36 @@
---
currentMenu: guide-hash
---
# Hash
Vapor makes hashing strings easy.
## Example
To hash a string, use the `hash` class on `Droplet`.
```swift
let hashed = drop.hash.make("vapor")
```
## SHA2Hasher
By default, Vapor uses a SHA2Hasher with 256 bits. You can change this by giving the `Droplet` a different hasher.
```swift
let sha512 = SHA2Hasher(variant: .sha512)
let drop = Droplet(hash: sha512)
```
### Protocol
You can also create your own hasher. You just need to conform to the `Hash` protocol.
```swift
public protocol Hash: class {
var key: String { get set }
func make(_ string: String) -> String
}
```