Skip to content

This package provides a simple and secure way to encrypt and decrypt messages in Laravel applications. It uses Sodium cryptographic library for encryption and decryption, ensuring high-level security. The package is easy to integrate into any Laravel application and requires minimal configuration.

Notifications You must be signed in to change notification settings

Semeton/crypto-service

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

19 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

CryptoService

CryptoService is a package that provides a simple yet secure way to encrypt and decrypt messages using a secret code. It leverages the power of the Sodium cryptographic library to ensure the highest level of security. This document provides a comprehensive guide on how to install and use CryptoService, along with a detailed explanation of its methods.

Installation

Installing CryptoService is a breeze with the package manager composer. Follow the link to download and install composer if you have not already. composer require semeton/crypto-service

CryptoService Class Documentation

Overview

The CryptoService class provides encryption and decryption services using the Sodium cryptographic library. It uses a secret key of a 64 bits of random string.

Methods

encrypt(string $message, string $secretCode): string

This method encrypts a given message.

  • Parameters: - $message (string): The message to be encrypted. - $secretCode (string): A secret code used in the encryption process.
  • Returns: The encrypted message as a base64-encoded string.
  • Description: This method generates a random nonce and uses it along with the $message and a hashed combination of $key and $secretCode to create an encrypted cipher. The cipher is then base64-encoded for safe transmission or storage. The memory of the $message and $key is cleared after encryption for security reasons.

decrypt(string $encrypted, string $secretCode): string

This method decrypts a given encrypted message.

  • Parameters: - $encrypted (string): The message to be decrypted. - $secretCode (string): A secret code used in the decryption process.
  • Returns: The decrypted message as a string. If decryption fails, it returns an error message.
  • Description: This method decodes the $encrypted message, extracts the nonce and ciphertext, and attempts to decrypt the ciphertext using the nonce and a hashed combination of $key and $secretCode. If decryption is successful and the result is a string, it returns the decrypted message. If decryption fails or the result is not a string, it returns an error message. The memory of the ciphertext and $key is cleared after decryption for security reasons.

About

This package provides a simple and secure way to encrypt and decrypt messages in Laravel applications. It uses Sodium cryptographic library for encryption and decryption, ensuring high-level security. The package is easy to integrate into any Laravel application and requires minimal configuration.

Resources

Stars

Watchers

Forks

Packages

No packages published

Languages