热门标签 | HotTags
当前位置:  开发笔记 > 后端 > 正文

密码学:身份认证详解

一.身份认证与数字签名的区别数字签名是防止他人对传输的文件进行破坏,以及确定发信人的身份的手段。而身份认证是确认用户是否为这个用户的手段。(仔细品&#

一.身份认证与数字签名的区别

数字签名是防止他人对传输的文件进行破坏,以及确定发信人的身份的手段。而身份认证是确认用户是否为这个用户的手段。(仔细品,不一样)
举个例子,A向B发送一条消息,说我下午五点去你家。数字签名可以保证消息是A发送的,且消息内容没有被改变过。下午五点钟,A到B家门口敲门,通过身份认证证实确实是A在敲门,那B就给A开门。如果没有身份认证的话,B能在五点钟直接开门吗?
学术点讲,身份认证的目的是鉴别通信中另一端的真实身份,防止伪造和假冒等情况发生。进行身份认证的技术方法主要是密码学方法,包括使用对称加密算法、公开密钥密码算法、数字签名算法等。


二.身份认证的手段


1.基于口令的身份认证(相当于账号密码)

在这里插入图片描述
口令保持方案:
存放在一个受保护的文件(文件内容容易泄露)
以密文形式保存(加密的密钥管理保存困难)
基于单向函数的口令加密

口令认证的安全威胁
一个实体如果可以获知(如猜测)出另一个实体的口令,那么就可以冒充他人。


2.基于Challenge/Response的身份认证

Challenge/Response认证本质:
改变每次传输的口令

假设条件:用户U与系统S预先协商好一个秘密函数f——通信证算法
S发送一个随机消息m(挑战)给U
U计算r’ = f(m‘)(回答),并发送给S
S独立计算r = f(m)来验证r’
注意:通信证算法f应该是U和S独有的
验证码可以理解为一个简单的challenge/response。


3.基于对某种东西持有性的身份认证

某种东西通常为磁卡(用磁卡中的PIN码)或智能卡(带智能化的微处理器和存储器

在这里插入图片描述
磁卡的缺点是依赖于磁条,而磁条又很容易损坏。智能卡好像目前用的更为广泛,但是成本偏高。


4.基于生物特征的身份认证

实际的生物特征识别系统应满足的条件
在合理的资源需求下实现可接受的识别准确性和速度
对人没有伤害而且可为人们所接受
对各种欺诈方法有足够的鲁棒性

常用的生物特征识别技术
人脸识别、眼睛识别、手形识别、指纹识别、掌纹识别、声音识别


5.基于行为特征的身份认证

手写签字
离线认证:通过扫描仪获得签名的数字图像
在线认证:利用数字写字板或压敏笔来记录书写签名的过程
击键行为特征(铠甲勇士那个系统hh)


推荐阅读
  • 深入解析 Apache Shiro 安全框架架构
    本文详细介绍了 Apache Shiro,一个强大且灵活的开源安全框架。Shiro 专注于简化身份验证、授权、会话管理和加密等复杂的安全操作,使开发者能够更轻松地保护应用程序。其核心目标是提供易于使用和理解的API,同时确保高度的安全性和灵活性。 ... [详细]
  • 网络攻防实战:从HTTP到HTTPS的演变
    本文通过一系列日记记录了从发现漏洞到逐步加强安全措施的过程,探讨了如何应对网络攻击并最终实现全面的安全防护。 ... [详细]
  • 本文详细介绍了Java编程语言中的核心概念和常见面试问题,包括集合类、数据结构、线程处理、Java虚拟机(JVM)、HTTP协议以及Git操作等方面的内容。通过深入分析每个主题,帮助读者更好地理解Java的关键特性和最佳实践。 ... [详细]
  • 2023年京东Android面试真题解析与经验分享
    本文由一位拥有6年Android开发经验的工程师撰写,详细解析了京东面试中常见的技术问题。涵盖引用传递、Handler机制、ListView优化、多线程控制及ANR处理等核心知识点。 ... [详细]
  • 优化ListView性能
    本文深入探讨了如何通过多种技术手段优化ListView的性能,包括视图复用、ViewHolder模式、分批加载数据、图片优化及内存管理等。这些方法能够显著提升应用的响应速度和用户体验。 ... [详细]
  • 本文探讨了Hive中内部表和外部表的区别及其在HDFS上的路径映射,详细解释了两者的创建、加载及删除操作,并提供了查看表详细信息的方法。通过对比这两种表类型,帮助读者理解如何更好地管理和保护数据。 ... [详细]
  • 1:有如下一段程序:packagea.b.c;publicclassTest{privatestaticinti0;publicintgetNext(){return ... [详细]
  • 本文介绍了Java并发库中的阻塞队列(BlockingQueue)及其典型应用场景。通过具体实例,展示了如何利用LinkedBlockingQueue实现线程间高效、安全的数据传递,并结合线程池和原子类优化性能。 ... [详细]
  • 本文深入探讨了Linux系统中网卡绑定(bonding)的七种工作模式。网卡绑定技术通过将多个物理网卡组合成一个逻辑网卡,实现网络冗余、带宽聚合和负载均衡,在生产环境中广泛应用。文章详细介绍了每种模式的特点、适用场景及配置方法。 ... [详细]
  • 在现代网络环境中,两台计算机之间的文件传输需求日益增长。传统的FTP和SSH方式虽然有效,但其配置复杂、步骤繁琐,难以满足快速且安全的传输需求。本文将介绍一种基于Go语言开发的新一代文件传输工具——Croc,它不仅简化了操作流程,还提供了强大的加密和跨平台支持。 ... [详细]
  • MySQL 数据库迁移指南:从本地到远程及磁盘间迁移
    本文详细介绍了如何在不同场景下进行 MySQL 数据库的迁移,包括从一个硬盘迁移到另一个硬盘、从一台计算机迁移到另一台计算机,以及解决迁移过程中可能遇到的问题。 ... [详细]
  • 网易严选Java开发面试:MySQL索引深度解析
    本文详细记录了网易严选Java开发岗位的面试经验,特别针对MySQL索引相关的技术问题进行了深入探讨。通过本文,读者可以了解面试官常问的索引问题及其背后的原理。 ... [详细]
  • 优化联通光猫DNS服务器设置
    本文详细介绍了如何为联通光猫配置DNS服务器地址,以提高网络解析效率和访问体验。通过智能线路解析功能,域名解析可以根据访问者的IP来源和类型进行差异化处理,从而实现更优的网络性能。 ... [详细]
  • 探索12个能显著提升iPhone使用体验的隐藏技巧,掌握这些功能后,你会发现生活更加便捷高效。 ... [详细]
  • 深入剖析 DEX 赛道:从 60 大头部项目看五大趋势
    本文通过分析 60 大头部去中心化交易平台(DEX),揭示了当前 DEX 赛道的五大发展趋势,包括市场集中度、跨链协议、AMM+NFT 结合、新公链崛起以及稳定币和衍生品交易的增长潜力。 ... [详细]
author-avatar
X---CAR
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有