Maison >Problème commun >Quels sont les mécanismes de sécurité utilisés pour mettre en œuvre l'authentification ?

Quels sont les mécanismes de sécurité utilisés pour mettre en œuvre l'authentification ?

烟雨青岚
烟雨青岚original
2020-07-06 14:43:4214356parcourir

Les mécanismes de sécurité utilisés pour réaliser l'authentification de l'identité sont : le mécanisme de cryptage et le mécanisme de signature numérique. Le cryptage consiste à utiliser un algorithme spécial pour modifier les données d'information originales, de sorte que même si des utilisateurs non autorisés obtiennent les informations cryptées, ils ne peuvent toujours pas comprendre le contenu de l'information ; toutes les demandes d'interface de données du mécanisme de signature doivent passer par une signature numérique ; La signature utilise la spécification "MD5" 32 bits.

Quels sont les mécanismes de sécurité utilisés pour mettre en œuvre l'authentification ?

Les mécanismes de sécurité utilisés pour réaliser l'authentification de l'identité sont des mécanismes de cryptage et des mécanismes de signature numérique.

Le cryptage consiste à utiliser un algorithme spécial pour modifier les données d'information d'origine, de sorte que même si des utilisateurs non autorisés obtiennent les informations cryptées, ils ne peuvent toujours pas les déchiffrer car ils ne connaissent pas la méthode. Comprendre le contenu du message. En aéronautique, il désigne l'opération consistant à utiliser quelques points de contrôle connus sur des photos de photographie aérienne pour ajouter des points de contrôle à la paire d'images ou à l'ensemble de la ceinture de photographie aérienne en mesurant et calculant les photos.

Mécanisme de signature

Toutes les demandes d'interface de données doivent transmettre une signature numérique, et la signature numérique utilise la spécification MD5 32 bits.

Règles de calcul de l'algorithme de signature :

sign= ((noncestr + openid + PublicKey + timestamp).MD5()+ PrivateKey).MD5().ToLower();

Première étape :

//拼接字符串
String str1 = (随机字符串noncestr + 开放平台openid + 公钥PublicKey+ 时间戳timestamp);
//对str1进行md5运算之后得到str1MD5;
String str1MD5 = str1.MD5();

Deuxième étape :

//第二次拼接字符串
String str2 = (第一步得到的str1MD5 + 私钥PrivateKey);
//对str2进行md5运算之后并转换为小写的32位
String sign = str2.MD5().ToLower();

Toutes les demandes doivent être transmises en chiffres Signez, le système vérifiera que la signature numérique est correcte avant de faire d'autres réponses.

Exemple :

Openid:IOS1101
Timestamp:1439950776
Noncestr:xy19102724
PrivateKey: defe97621eef237896e489228fb68786
PublicKey: 38dae8d211692021116dd85793487f6b

Signe correct : 6f2573587a4ca0379d32a8975014cc0f

Pour plus de connaissances connexes, veuillez visiter le Site Web PHP chinois ! !

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:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn

Articles Liés

Voir plus