Skip to content

Handle data encryption/decryption using AES-128, encode with initialization vector.

License

Notifications You must be signed in to change notification settings

Crowdstar/crypt

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

16 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Library Status Latest Stable Version Latest Unstable Version License

Summary

The crypt package creates a simple interface for the phpseclib AES-128 library. Its interface allows encryption and decryption of strings with a layer of base64 encoding for easy transmission including the initialization vector.

Installation

composer require crowdstar/crypt:~2.0.0

Sample Usage

Before using the library, you need to choose a secret key, which should be of size 16, 24 or 32 only.

<?php
$secretKey = "1234567890123456";

1. Encrypt and Encode plain text data for storage or transmission

<?php
use CrowdStar\Crypt\Crypt;

$encodedEncryptedData = (new Crypt($secretKey))->encrypt("message");

2. Decoding and Decrypting stored or received data

<?php
use CrowdStar\Crypt\Crypt;

$encodedEncryptedData = (new Crypt($secretKey))->decrypt("encoded_encrypted_data");

3. Encrypting and Decrypting with an alternate length initialization vector

<?php
use CrowdStar\Crypt\Crypt;

$crypt = new Crypt($secretKey);

$alternateIVLength = 8;
$encodedEncryptedData = $crypt->encrypt("message", $alternateIVLength);
$plainText = $crypt->decrypt($encodedEncryptedData, $alternateIVLength);

When bad data is passed in, the return value of method call CrowdStar\Crypt\Crypt::decrypt() will be an empty string.

About

Handle data encryption/decryption using AES-128, encode with initialization vector.

Topics

Resources

License

Stars

Watchers

Forks

Languages