nihilsen / keypad
使用 Blade 组件和原生 Web Crypto API 为 Laravel 提供客户端加密框架。
v0.4.0
2023-04-07 04:21 UTC
Requires
- php: ^8.1
- illuminate/contracts: ^10.0
- spatie/laravel-package-tools: ^1.14.0
Requires (Dev)
- laravel/dusk: ^7.6
- laravel/pint: ^1.0
- nunomaduro/collision: ^7.9
- orchestra/testbench: ^8.0
- orchestra/testbench-dusk: ^8.4.0
- pestphp/pest: ^2.0
- pestphp/pest-plugin-laravel: ^2.0
This package is auto-updated.
Last update: 2024-09-11 07:53:35 UTC
README
Keypad 是一个 Laravel 扩展包,旨在简化将客户端加密和解密功能添加到 Laravel 应用程序中。
Keypad 提供了一系列响应式的 Blade 组件,可以插入到现有的认证表单中。
底层,Keypad 使用浏览器原生的 Web Crypto API。
安装
您可以通过 composer 安装此包
composer require nihilsen/keypad
您可以使用以下命令运行迁移
php artisan migrate
您可以使用以下命令发布配置文件
php artisan vendor:publish --tag="keypad-config"
这是发布配置文件的内容
组件和用法
登录: <x-keypad::login>
<form method="POST" action="/login/"> {{ -- CSRF token -- }} @csrf {{ -- email field -- }} <input type="email" name="email_field" placeholder="email" /> {{ -- password field -- }} <input type="password" name="password_field" placeholder="password" /> {{ -- Keypad "login" component -- }} <x-keypad::login password="password_field" /> {{ -- other form elements, submit button, etc ... -- }} </form>
注册: <x-keypad::register>
<form method="POST" action="/register/"> {{ -- CSRF token -- }} @csrf {{ -- email field -- }} <input type="email" name="email_field" placeholder="email" /> {{ -- password field -- }} <input type="password" name="password_field" placeholder="password" /> {{ -- confirm password field -- }} <input type="password" name="confirm_password_field" placeholder="confirm password" /> {{ -- Keypad "register" component -- }} <x-keypad::register password="password_field" confirmation="confirm_password_field" /> {{ -- other form elements, submit button, etc ... -- }} </form>
加密: <x-keypad::encrypt>
<form method="POST" action="/send_message/"> {{ -- CSRF token -- }} @csrf {{ -- plaintext message field -- }} <input type="text" name="secret_message" placeholder="Enter your message" /> {{ -- get recipient keypad -- }} @php $recipient = User::find($__GET['recipient_id']); $keypad = $recipient->keypad; @endphp {{ -- Keypad "encrypt" component -- }} <x-keypad::encrypt target="secret_message" :$keypad /> {{ -- other form elements, submit button, etc ... -- }} </form>
解密: <x-keypad::decrypt>
<x-keypad::decrypt>{{ $message->secret_message }}</x-keypad::decrypt>
变更日志
请参阅 CHANGELOG 了解最近的更改信息。
路线图
-
<x-keypad::login />
-
<x-keypad::register />
-
<x-keypad::encrypt />
-
<x-keypad::decrypt />
-
<x-keypad::hash />
-
<x-keypad::change-password />
-
<x-keypad::recover />
贡献
- 欢迎提交拉取请求、错误报告和功能请求。
鸣谢
许可证
MIT 许可证 (MIT)。请参阅 许可证文件 了解更多信息。