# README
cuid
Collision-resistant hashes for the cloud, in Go.
The cuid
package provides collision-resistant ids optimized for horizontal scaling and sequential lookup performance. This README file is just going to cover the basics and the Go-specific implementation details.
Please refer to the main project site for the full rationale behind CUIDs.
Sample CUID
ch72gsb320000udocl363eofy
Sample CUID Slug
ew0k9fwpl
Installation
go get -u github.com/lucsky/cuid
Example usage
package main
import (
"crypto/rand"
"fmt"
"github.com/lucsky/cuid"
)
func main() {
// Generate pseudo-random CUID
fmt.Println(cuid.New())
// Generate slug
fmt.Println(cuid.Slug())
// Generate cryptographic-random CUID
c, err := cuid.NewCrypto(rand.Reader)
if err != nil {
fmt.Printf("%v", err)
return
}
fmt.Println(c)
}
Go package specific features
The Go cuid package provides APIs to specify a custom random source as well as a custom counter. A custom counter implementation could provide a centralized Redis base counter, for example.
Contributors
- Luc Heinrich (@lucsky, author)
- Thomas Hopkins (@hopkinsth)
- fiatjaf
- Marcus Dantas (@mpsdantas)
- Oscar Forner Martinez (@maitesin)
- Mike Frey (@mikefrey)
- Andris Mednis (@andrismednis)
# Functions
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
# Structs
No description provided by the author
# Interfaces
No description provided by the author