PHPackages                             larva/laravel-auth-signature-guard - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Authentication &amp; Authorization](/categories/authentication)
4. /
5. larva/laravel-auth-signature-guard

ActiveLibrary[Authentication &amp; Authorization](/categories/authentication)

larva/laravel-auth-signature-guard
==================================

This is a Laravel auth guard for the signature.

1.0.1(4y ago)54141MITPHP

Since Mar 6Pushed 4y agoCompare

[ Source](https://github.com/larvatecn/laravel-auth-signature-guard)[ Packagist](https://packagist.org/packages/larva/laravel-auth-signature-guard)[ RSS](/packages/larva-laravel-auth-signature-guard/feed)WikiDiscussions master Synced 2w ago

READMEChangelog (2)Dependencies (2)Versions (3)Used By (0)

laravel-auth-signature-guard
============================

[](#laravel-auth-signature-guard)

适用于 Laravel Auth 的签名看守器，基于 Laravel Passport

安装
--

[](#安装)

```
composer require larva/laravel-auth-signature-guard
```

```
//认证配置
/config/auth.php

//增加一个看守器

'guards' => [
	'web'=>[],//原WEB的
	'api'=>[],//原API
	'signature'=>[//新增的
		'driver'=>'signature'
		'provider'=>'users',
	]
]
// 使用时在控制器中

class SDKController extends Controller
{
    public function __construct()
    {
        $this->middleware('auth:signature');
    }
}

//按照以上配置，该控制器所有的方法都会经过签名看守器认证。
```

### 公共请求参数

[](#公共请求参数)

公共请求参数是每个接口都需要使用到的请求参数。

名称类型描述`app_id`String访问服务使用的应用ID。`timestamp`Int请求的时间戳，10位数整形。`signature`String签名结果串。`signature_method`String签名方式，取值：HMAC-SHA1/HMAC-SHA256`signature_version`String签名版本，取值：1.0`signature_nonce`String唯一随机数，用于防止网络重放攻击。在不同请求间要使用不同的随机数值。参数签名计算 例子

```
$appKey = '123456';
$params = [
    'app_id' => 3,
    'timestamp' => 1555069945,
    'signature_method'=>'HMAC-SHA1',
    'signature_version'=>'1.0',
    'signature_nonce'=>'rakdienakdig',
    'key1'=>'val1',
    'key2'=>'val2'
];

//排序参数
//按照键名对关联数组进行升序排序
ksort($params);
//编码
$stringToSign = urlencode(http_build_query($params, null, '&', PHP_QUERY_RFC3986));
$stringToSign = str_replace(['+', '*'], ['%20', '%2A'], $stringToSign);
$stringToSign = preg_replace('/%7E/', '~', $stringToSign);

//签名
$params['signature'] = base64_encode(hash_hmac('sha1', $stringToSign, $appKey.'&', true));

// 你的HTTP 实例，
$res = $http->post('your api url/path',$params);

//其中参数中的时间戳和世界标准时间相差不能超过1分钟。

//签名计算例子 在tests 目录
```

###  Health Score

28

—

LowBetter than 52% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity18

Limited adoption so far

Community7

Small or concentrated contributor base

Maturity54

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 100% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~454 days

Total

2

Last Release

1489d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/534cdb651e8c806590fa945c6b5a18f361613848e890db1349f4a9fbcae1a650?d=identicon)[xutongle](/maintainers/xutongle)

---

Top Contributors

[![xutl](https://avatars.githubusercontent.com/u/20939388?v=4)](https://github.com/xutl "xutl (2 commits)")

---

Tags

laravelsignatureauth

### Embed Badge

![Health badge](/badges/larva-laravel-auth-signature-guard/health.svg)

```
[![Health](https://phpackages.com/badges/larva-laravel-auth-signature-guard/health.svg)](https://phpackages.com/packages/larva-laravel-auth-signature-guard)
```

###  Alternatives

[php-open-source-saver/jwt-auth

JSON Web Token Authentication for Laravel and Lumen

84611.1M61](/packages/php-open-source-saver-jwt-auth)[cartalyst/sentinel

PHP 8.2+ Fully-featured Authentication &amp; Authorization System

1.5k2.7M77](/packages/cartalyst-sentinel)[directorytree/ldaprecord-laravel

LDAP Authentication &amp; Management for Laravel.

5752.3M17](/packages/directorytree-ldaprecord-laravel)[auth0/login

Auth0 Laravel SDK. Straight-forward and tested methods for implementing authentication, and accessing Auth0's Management API endpoints.

2795.3M3](/packages/auth0-login)[jurager/teams

Laravel package to manage team functionality and operate with user permissions.

23822.5k](/packages/jurager-teams)[mpyw/scoped-auth

Apply specific scope for user authentication.

1181.0k](/packages/mpyw-scoped-auth)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
