Maison  >  Article  >  cadre php  >  Recommandation d'extension Laravel : package Ciphersweet (champs de chiffrement/déchiffrement)

Recommandation d'extension Laravel : package Ciphersweet (champs de chiffrement/déchiffrement)

青灯夜游
青灯夜游avant
2022-12-23 19:39:431171parcourir

Cet article partagera avec vous une extension Recommandation dextension Laravel : package Ciphersweet (champs de chiffrement/déchiffrement) : le package Ciphersweet. Il présentera comment utiliser Recommandation dextension Laravel : package Ciphersweet (champs de chiffrement/déchiffrement) Ciphersweet pour crypter/déchiffrer les champs du modèle Eloquent dans Recommandation dextension Laravel : package Ciphersweet (champs de chiffrement/déchiffrement).

Recommandation dextension Laravel : package Ciphersweet (champs de chiffrement/déchiffrement)

Recommandation dextension Laravel : package Ciphersweet (champs de chiffrement/déchiffrement) Ciphersweet est un package fourni par Spatie pour intégrer le cryptage au niveau du champ consultable dans les applications Recommandation dextension Laravel : package Ciphersweet (champs de chiffrement/déchiffrement). Le readme du package explique le problème que l'adoucissement des mots de passe peut aider à résoudre, comme suit :

Dans votre projet, vous pouvez stocker des données personnelles sensibles dans une base de données. Si une personne non autorisée accède à votre base de données, toutes les données sensibles peuvent être lues, ce qui n'est évidemment pas une bonne chose.

Pour résoudre ce problème, vous pouvez crypter vos données personnelles. De cette façon, les personnes non autorisées ne peuvent pas le lire, mais votre application peut toujours le déchiffrer lorsque vous devez afficher ou utiliser les données.

Ce package est un wrapper pour Ciphersweet, ce qui facilite l'intégration de ses fonctionnalités dans les modèles Recommandation dextension Laravel : package Ciphersweet (champs de chiffrement/déchiffrement). Voici un exemple de modèle tiré du fichier readme instructions de configuration qui illustre l'utilisation du modèle Ciphersweet

use Spatie\Recommandation dextension Laravel : package Ciphersweet (champs de chiffrement/déchiffrement)CipherSweet\Contracts\CipherSweetEncrypted;
use Spatie\Recommandation dextension Laravel : package Ciphersweet (champs de chiffrement/déchiffrement)CipherSweet\Concerns\UsesCipherSweet;
use ParagonIE\CipherSweet\EncryptedRow;
use Illuminate\Database\Eloquent\Model;

class User extends Model implements CipherSweetEncrypted
{
    use UsesCipherSweet;

    public static function configureCipherSweet(EncryptedRow $encryptedRow): void
    {
        $encryptedRow
            ->addField('email')
            ->addBlindIndex('email', new BlindIndex('email_index'));
    }
}

Cela vous permet de crypter le courrier électronique d'un utilisateur pour empêcher des personnes non autorisées de lire les données, mais vous permet de décrypter les données pour les afficher ou utilisez-le.

Une fois que vous avez configuré ce package et configuré le modèle, vous pouvez rechercher dans la base de données des données cryptées à l'aide d'index aveugles :

$user = User::whereBlind('email', 'email_index', 'rias@spatie.be');

Ce package permet également de générer des clés de cryptage et des propriétés de modèle de cryptage pour accélérer l'intégration avec la cryptographie.

Je tiens à souligner que vous ne devez pas utiliser aveuglément ce package sans comprendre les tenants et les aboutissants du cas d'utilisation que vous essayez de résoudre. Vous pouvez en savoir plus sur CipherSweet sur cette page qui contient de nombreuses ressources liées

CipherSweet dispose également d'une documentation spécifique à PHP pour vous aider à comprendre rapidement le package PHP sous-jacent.

Je recommande également de lire l'article de Rias, Encrypting Recommandation dextension Laravel : package Ciphersweet (champs de chiffrement/déchiffrement) Eloquent models using CipherSweet.

Pour commencer avec ce package, consultez-le sur GitHub à l'adresse spatie/laravel-ciphersweet.

​ ​ ​ forfaits
Toutes les traductions de cet article sont uniquement destinées à des fins d'apprentissage et de communication. Veuillez vous assurer d'indiquer le traducteur, la source et le lien vers cet article lors de la réimpression
. Notre travail de traduction est conforme à l'Accord CC Si notre travail porte atteinte à vos droits, veuillez nous contacter à temps.

Adresse originale : https://laravel-news.com/laravel-ciphers...

Adresse de traduction : https://www.php.cn/link/53701130ff29be387e2fa7e04928b5ed

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Cet article est reproduit dans:. en cas de violation, veuillez contacter admin@php.cn Supprimer