semeton/crypto-service

此软件包为Laravel应用程序提供了一种简单且安全的方式加密和解密消息。它使用Sodium加密库进行加密和解密,确保了高级别的安全性。该软件包易于集成到任何Laravel应用程序中,且配置要求最少。

1.1.1 2024-01-08 19:06 UTC

This package is auto-updated.

Last update: 2024-09-08 20:32:08 UTC


README

CryptoService是一个软件包,它提供了使用密钥加密和解密消息的简单而安全的方式。它利用Sodium加密库的强大功能以确保最高级别的安全性。本文档提供了关于如何安装和使用CryptoService的全面指南,并对其方法进行了详细解释。

安装

使用包管理器composer轻松安装CryptoService。如果您还没有安装composer,请点击链接下载并安装。 composer require semeton/crypto-service

CryptoService类文档

概述

CryptoService类提供使用Sodium加密库进行加密和解密的服务。它使用一个64位随机字符串的密钥。

方法

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

此方法加密给定的消息。

  • 参数:- $message (string):要加密的消息。- $secretCode (string):加密过程中使用的密钥。
  • 返回:以base64编码的加密消息字符串。
  • 描述:此方法生成一个随机nonce,并使用它以及$message和一个$key$secretCode的哈希组合来创建加密的密文。然后将密文base64编码,以便安全地传输或存储。出于安全原因,在加密后清除$message$key的内存。

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

此方法解密给定的加密消息。

  • 参数:- $encrypted (string):要解密的消息。- $secretCode (string):解密过程中使用的密钥。
  • 返回:解密后的消息字符串。如果解密失败,则返回错误消息。
  • 描述:此方法解码$encrypted消息,提取nonce和密文,并尝试使用nonce和$key$secretCode的哈希组合解密密文。如果解密成功且结果为字符串,则返回解密后的消息。如果解密失败或结果不是字符串,则返回错误消息。出于安全原因,在解密后清除密文和$key的内存。