Skip to content
πŸ” Shield::Password Generator
Crystal Shell Makefile
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
bin
images
spec
src
.gitignore
.travis.yml
dockerfile
license
makefile
readme.md
shard.yml

readme.md

Shield.cr - Password Generator

Description

Features

  • Custom Secret Key Number of Iterations.
  • Custom Secret Key Length (10-99).
  • With Custom Create Email Address.
  • With Custom Create UserName.
  • With Custom Create PIN Code.
  • Custom UserName Number of Iterations.
  • Custom Email Number of Iterations.
  • Custom UserName / Email Address Length.
  • Sliding Create Secret Key Length.
  • More Spec Tests to be added.
  • More Code Comments to be added.
  • More Wiki Information to be added.
  • Shield CLI Password Vault (Shadow.cr).
  • Shield.cr Windows / iOS Support.
  • ...

IdWithKey

How does it work?

  • SecureId
    • UUID-Sha384
  • SecretKey
    • (sha512WithRSAEncryption + HMAC + (Pbkdf2HMAC * 32)) * iterations

SecureId

  • _id_: OpenSSL#Digest
    • Digest(data: titleName, "sha384")
    • left, right = getCenter
    • [left..right] -> UUID -> UpCase

SecretKey

  • _rsa_: OpenSSL#Digest
    • Digest(data: key, algorithm: sha512WithRSAEncryption) + : + SecureId
    • Slide
  • _hmac: OpenSSL#HMAC
    • SecureId + : + HMAC(data: _rsa_, key: Crc32(_rsa_).reverse)
  • pbkdf: OpenSSL#PKCS5#Pbkdf2HMAC
    • Pbkdf2HMAC(secret: _hmac, salt: _rsa_, iterations: 2 ** 5, algorithm: SHA512)
    • Slide
  • _key_: Shield#Character#obfuscate
    • Obfuscate(pbkdf[PbkdfSlider.left..PbkdfSlider.right].reverse)
    • ...
  • IterativeKey(iterations) -> Done -> yield done?, _key_.

Use Shield

Used as Shard

Add this to your application's shard.yml:

dependencies:
  shield:
    github: 636f7374/shield.cr

Installation

$ git clone https://github.com/636f7374/shield.cr.git
$ cd shield.cr && make build && make install

Development

$ make test

Credit

Contributors

Name Creator Maintainer Contributor
636f7374 √ √
delef √

License

  • MIT License
You can’t perform that action at this time.