如何防范 AI 盗取你的密码
现如今,随着人工智能(AI)应用的普及和快速迭代,几乎任何人都可以轻而易举地利用AI进行密码破解之类的攻击。这已经引起了业界的担忧。下面,我将围绕着:密码破解究竟意味着什么,基于AI的密码猜测技术,以及我们该如何保护自己的密码免受此类攻击这三个方面展开讨论。
破解密码意味着什么?
长期以来,密码始终是网络攻击者关注的焦点。他们只需获取密码,就能绕过所有的安全系统,攫取整个系统的相关信息,及其存储在其中的所有数据。
让我们先来了解一下与密码破解有关的散列(哈希,hashing)概念。密码散列是一种通过更改原始记录中的数字,来安全地存储用户密码的方法。其过程为:对用户的真实密码(通常为纯文本)进行数学计算处理,以输出固定长度的加密散列值。例如,您在登录某个网站时将密码设置为“secret_password123”,那么该网站的预定义散列函数会根据该输入的数据,生成类似“3a5b9c1d8e7f2b6g”的特定散列输出。换句话说,您在该网站数据库中留存的数据记录将是“3a5b9c1d8e7f2b6g”,而不是“secret_password123”。对此,如果网络攻击者劫持了该网站的数据库,他们就不得不通过计算“3a5b9c1d8e7f2b6g”值,来逆向推导出您的真实密码。然而,散列(哈希)算法的一个特点便是单向性。这会使得密码的破解过程变得相当复杂。不过,随着AI的赋能,黑客如今已可以采用多维度、不同的方法,去尝试着破解真实的散列密码。
AI能够破解密码吗?
凭借人工智能的快速计算、以及处理大型数据集的能力,网络攻击者能够据此,来缩短并破解某些由加密算法保护的密码。其中,最为典型的当属AI在密码破解过程中的学习能力。只要有足够的数据和时间被用来学习特定的加密算法,人工智能模型就能够学会理解和破解加密所用到的数学关系。可见,与普通的试错方法相比,人工智能可以更有效、更快速地破解密码。
除了机器学习,网络攻击者仍然可以借助人工智能,对密码开展暴力破解的攻击方式。此处的暴力破解是指,尝试所有可能的密码组合,以找到正确密码的过程。而人工智能完全可以优化该过程,以减少重复破解密码的尝试次数。
此外,人工智能还可以研究文本语言以及语法,成功地破解出那些基于自然语言的加密密钥。也就是说,利用人工智能的语言模型,网络攻击者可以更加高效地在密码分析中,使用基于频率分析的方式予以破解。
基于AI的密码猜测技术
密码的猜测往往直接涉及到各种数学方法。作为密码学研究领域的一个分支,密码分析最典型的方式莫过于历史上赫赫有名的英格玛密码(Enigma Code)。当然,人工智能也会用到如下以数学为基础的方式:
- 频率分析:它试图通过分析密文中字母或符号的出现频率,来猜测加密密钥或密码。通常,自然语言中的字母有着一定的频率分布规律,而经过加密后的文本字母也会出现类似的频率分布。这种规律的捕捉对于简单的加密算法而言,是特别有效的。
- 差分密码分析:这是发现块密码算法(block cipher algorithms)弱点的理想方法。该分析方法试图通过检查加密算法,在输入和输出之间的差异中,找到所使用的加密密钥。
- 线性和微分密码分析:它涉及到用于分析对称密钥加密算法的数学技术。该技术试图利用加密算法的线性方程、或差分方程,去发现加密密钥。
- 错误分析:在加密算法的实际执行过程中,系统极可能会出现各种潜在的错误,或是暴露出与安全相关的漏洞。该分析试图利用此类错误或漏洞,来伺机获取加密密钥。
- 随机性测试:由于加密算法的安全性主要取决于随机性,因此攻击者可以通过数学方法,来测试确定加密算法中使用到的随机性(其实是基于算法的“伪随机性”),以预测算法的输出结果。
- 特殊算法攻击:利用加密算法的相关知识和深入研究,网络攻击者可以发现某些典型算法的弱点,进而在此基础上开发出专门设计好的攻击方式。
上述密码分析方法不仅能够帮助到网络攻击者,也能够协助密码分析师,来评估正在使用、或已经采用的密钥算法的健壮程度。因此,它们对于密码安全的重要程度,是不言而喻的。
如何加强密码安全,防范人工智能攻击
鉴于网络攻击者可以将人工智能和密码破解技术结合起来发起攻击,普通用户又该如何采取行之有效的措施,来予以应对呢?
使用长而复杂的密码
许多人趋向使用简单的短语作为密码,以方便记忆。素不知,此举也方便了攻击者。对此,我们需要采用足够长的密码(至少12个字符),以应对简单的猜测攻击。
与此同时,密码中必须包含不同类型的字符,如:大、小写字母、数字和特殊字符等。例如,您不应该使用曾被认为神秘难测的“P@ssw0rd”之类的简单密码,而应当使用“Tr#78sF$a24pQ”这样在结构上更为复杂的密码。
如果您担心自己记不住长而复杂的密码的话,请使用一些功能强大的密码管理工具来协助您。当然,笔和纸这种老套的方式,并非毫无使用场景。
为每个平台设置不同的密码
许多人会在不同平台的多个账户中使用相同的密码。这种所谓的“图省事儿”往往潜藏着重大的安全风险。试想,如果网络攻击者获取了您其中一个账户的访问权限,那么他将轻而易举地访问您的其他账户。因此,我们需要通过为每个平台创建不同的密码的方式,来切断账户之间的联系。注意,此处所谓的“账户之间的联系”,不应只是简单地从一个应用的“password_1234”密码,更换为另一个应用的密码--“1235_password”,而是要尽量减少重复字符组合的出现频率。
使用双因素身份验证
双因素身份验证(Two-factor authentication,2FA)可以提供额外的安全保障。除了密码,2FA机制需要向您的手机、电子邮件或其他设备发送一串代码,以完成后续的身份验证。由于此举能够更好地保护您的账户免受恶意攻击,因此请确保您在主动支持 2FA 的平台上启用此项功能。
遵守密码更新和注销政策
定期更改密码有助于防范那些曾被用到过的密码被盗取,而不会波及到现有使用的密码。此外,请养成注销个人资料的习惯。此举将能够避免那些不再使用的设备、应用等在您毫不知情的状态下泄漏出去。
人工智能和网络安全的未来
人工智能技术的发展可谓日新月异。不只是技术专家和软件开发者正在积极探索AI的使用场景,让人类的生活更加轻松;也不乏黑客和恶意攻击者使用AI获取他人的密码,或达到其他不可告人的目的。针对如何防范AI盗取用户密码,希望上述简单实用的规避要点,能够给您提供帮助。
相关文章:
如何防范 AI 盗取你的密码
现如今,随着人工智能(AI)应用的普及和快速迭代,几乎任何人都可以轻而易举地利用AI进行密码破解之类的攻击。这已经引起了业界的担忧。下面,我将围绕着:密码破解究竟意味着什么,基于AI的密码猜测…...
华清远见第六课程作业day3
类 栈 #include <iostream>using namespace std;class Sta{ private:int *data;int top; public:Sta():data(new int(128)){top-1;cout<<"stack::无参构造:"<<endl;}~Sta(){delete data;cout<<"stack::析构函数:"<<this<…...
Rabbitmq配置定义
RabbitMQ 环境变量 RabbitMQ 的环境变量都是以"RABBITMQ_"开头的,可以在Shell 环境中设置,也可以在配置文件中定义。默认的配置文件如下: ## /etc/rabbitmq/rabbitmq-env.conf 定义配置文件: /va/lib/rabbitmq/ 的目…...
2023年数模国赛时间分配
2023年数模国赛时间分配 写在前面赛前准备第一天(9.7 18:00发布题目)第二天(9.8)第三天(9.9)第四天(9.10 20:00提交)总结 写在前面 国赛马上就要开始啦 今年的比赛时间是9月7日&…...
kubernetes(K8S)笔记
文章目录 大佬博客简介K8SDocker VS DockerDockerK8S简介K8S配合docker相比较单纯使用docker 大佬博客 Kubernetes(通常缩写为K8s)是一个用于自动化容器化应用程序部署、管理和扩展的开源容器编排平台。它的构造非常复杂,由多个核心组件和附加…...
vue 部署到本机IIS 部署 SPA 应用
安装 URL Rewrite Works With: IIS 7, IIS 7.5, IIS 8, IIS 8.5, IIS 10 URL Rewrite : The Official Microsoft IIS Site 目前电脑IIS是6版本的,以下的方法不太合适操作。目前用Nginx部署,够用了。 nginx配置参考: uni-app 前面项目&am…...
面试那些事——Java全栈
今年年初因为个人的精神状态和职业方向辞职休息了一段时间,最近重新找了一份开发的工作,还是在太原,在这里分享一下自己的一些面试经验。 面试,面的是什么 我们要知道,目标的就职地行业的需求是什么,目标的…...
LINUX 文件基本管理
一、文件类型和根目录结构 1、文件类型 可以通过 ls -l 或者 ll来查看文件类型 可以根据显示,查看第一个字符,就表示文件类型。 - 字符:普通文件,类似于Windows的记事本。 d 字符:目录文件,类似于Wind…...
一、认识GitHub项目 —— TinyWebServer
认识GitHub项目 —— TinyWebServer 一、前言 这个项目是Linux下C轻量级Web服务器。几乎是想从事C服务器开发方向的同学的必备初始项目了。属于那种,“烂大街”,但是你又不能不会的项目。 对这个项目笔者打算多分几章讲解,帮助刚用GitHub&a…...
66.C++多态与虚函数
目录 1.什么是多态 2.多态的分类 3.对象转型 3.1 向上转型: 3.2 向下转型: 4.虚函数 1.什么是多态 生活中的多态,是指的客观的事物在人脑中的主观体现。例如,在路上看到⼀只哈士奇,你可以看做是哈士奇…...
【ICer的脚本练习】通过perl脚本来检查仿真log的结果
系列的目录说明请见:ICer的脚本练习专栏介绍与全流程目录_尼德兰的喵的博客-CSDN博客 前言 这是一个非常简单的perl脚本示例,展示一下perl语言“极简”的编码习惯。perl是我脚本入门的语言,一度也是最擅长的,但是因为python的强势现在我基本不写perl了。上一个大的perl脚本…...
创邻科技图数据库课程走进一流高校
《图数据库原理和实践》 正式开课! 最近,浙江大学计算机学院新开了一门名为 《图数据库原理和实践》 的新课程,该课程由创邻科技和浙江大学联合推出,吸引了许多学生踊跃参与! 曾为浙大学子的创邻科技CTO周研博士作为…...
RabbtiMQ的安装与在Springboot中的使用!!!
一、安装Erlang与Rabbitmq 安装教程本教程是在centos8下试验的,其实linux系统的都差不多RabbitMQ官方:Messaging that just works — RabbitMQRabbitMQ是开源AMQP实现,服务器端用Erlang语言编写,Python、Ruby、 NET、Java、JMS、c…...
【可定制、转换时间戳】解析nc文件,并保存为csv文件
解析nc文件,并保存为csv文件 写在最前面解析nc文件(代码汇总放最后面)读取nc文件获取气象文件中所有变量解析时间解析部分代码汇总 写入csv文件 写在最前面 愿称之为:支持私人订制、非常完美的版本 参考: 解析部分参…...
介绍串行和并行两种通信方式
前言 参考文章: 串行和并行- CSDN搜索 并行传输和串行传输的区别_金陵大掌柜的博客-CSDN博客 串行和并行介绍 (1)串行和并行是计算机领域中两个重要的概念。串行是指在计算机中,任务按照顺序一个一个执行,每个任务执行…...
优化爬虫效率:利用HTTP代理进行并发请求
网络爬虫作为一种自动化数据采集工具,广泛应用于数据挖掘、信息监测等领域。然而,随着互联网的发展和网站的增多,单个爬虫往往无法满足大规模数据采集的需求。为了提高爬虫的效率和性能,我们需要寻找优化方法。本文将介绍一种利用…...
关于磁盘空间不够,导致报错 springboot内置tomcat相关的临时目录无法创建等问题,如何自定义配置 tomcat 缓存文件路径
问题 关于磁盘空间不够,导致报错 springboot内置tomcat相关的临时目录无法创建等问题,如何自定义配置 tomcat 缓存文件路径 解决方法: shell 脚本命令:(配置自定义缓存路径 java-Djava.io.tmpdir ) tmp…...
Android HAL - hidl-gen
1.hidl-gen的使用 hidl-gen 编译器会将 .hal 文件编译成一组 .h 和 .cpp 文件,这些 自动生成的文件用于编译客户端 / 服务端实现链接到的共享库,同 时也可以生成 Android.bp 编译文件。 1.1 生成的文件 HIDL 软件包中自动生成的文件会关联到与该软件…...
CGAL 数值类型
文章目录 一、简介二、内置数值类型三、CGAL提供的数值类型四、GMP提供的数值类型五、LEDA提供的数值类型六、CORE提供的数值类型七、区间运算参考资料一、简介 数字类型必须满足一定的语法和语义要求,这样它们才能在CGAL代码中成功使用。一般来说,它们被认为是一个代数结构概…...
建站系列(六)--- 后端开发语言
目录 相关系列文章前言一、常见后端开发语言二、PHP三、Java四、Python五、Go 相关系列文章 建站系列(一)— 网站基本常识 建站系列(二)— 域名、IP地址、URL、端口详解 建站系列(三)— 网络协议 建站系列…...
王道数据结构编程题 查找
二叉树定义 以下为本文解题代码的二叉树定义。 struct TreeNode {int val;TreeNode* left, *right;TreeNode(int val 0, TreeNode* left nullptr, TreeNode* right nullptr): val(val), left(left), right(right) {} };递归二分查找 题目描述 写出二分查找的递归算法。初…...
vue 部分知识点总结
计算属性和方法有什么区别,怎么选择? 在编程中,计算属性和方法都是用于处理数据的工具,但它们有一些区别。以下是它们的区别和如何选择的几个因素: 执行方式:计算属性是基于依赖的响应式系统,在…...
谷粒商城----ES篇
一、product-es准备 P128 ES在内存中,所以在检索中优于mysql。ES也支持集群,数据分片存储。 需求: 上架的商品才可以在网站展示。上架的商品需要可以被检索。 分析sku在es中如何存储 商品mapping 分析:商品上架在es中是存s…...
Redis3.2.1如何设置远程连接?允许局域网访问
背景: 电脑A的redis需要开放给电脑B使用,二者处于同一局域网 【后面会补充更详细的踩坑历程,先发出来作为记录】 过程: 在你查了很多方法后,如果还是没有解决, 尝试考虑一下你的redis配置文件是不是修…...
网络原理(二)TCP的可靠传输
网络原理(一)目录 网络原理应用层传输层先说UDP(不可靠传输)重点说明TCP(可靠传输)一、确认应答二、超时重传三、链接管理建立连接断开链接 四、滑动窗口五、流量控制&am…...
Chat GPT 使用教学,文字创作、学习
目录 文章长篇文章学习任何东西文章 大纲、目录、标题、内容 写出10个即将被AI取代的工作的文章标题 当然,以下是一些可能会被AI取代的工作的文章标题:"未来十年,AI将如何改变传统制造业的就业格局?" "智能客服崛起:人工智能如何重塑客户服务行业?"…...
Android之 Canvas绘制
一 Canvas介绍 1.1 Canvas 是绘制图形的重要类之一,它可以在 View 或 SurfaceView 上绘制各种图形和文本. 1.2 要创建 Canvas,首先需要有一个 View 或 SurfaceView 对象,在 View 或 SurfaceView 的绘制方法中,可以通过 Canvas 的…...
Vue + Element UI 前端篇(十五):嵌套外部网页
Vue Element UI 实现权限管理系统 前端篇(十五):嵌套外部网页 嵌套外部网页 在有些时候,我们需要在我们的内容栏主区域显示外部网页。如查看服务端提供的SQL监控页面,接口文档页面等。 这个时候就要求我们的导航菜…...
Jabbi的Rust学习日记(二)
特征: 就目前我学习到的rust知识来看,我认为rust有以下几个特征: 链式调用表达式强类型 use 使用use导入包,我觉得rust的导包和python的很像 main main函数是rust可执行程序最先执行的代码,可以说是程序的入口&…...
【杂】环形时钟配色笔记
配色网站笔记 coolorsflatuicolorscolordrophttps://www.webdesignrankings.com/resources/lolcolors/ 配色2...
网站怎么做百度优化/产品如何做网络推广
ECMA-262把对象定义为:“无序属性的集合,其属性可以包含基本值、对象或者函数“。我们可以把ECMAScript的对象想象成散列表:一组名值对,其中值可以使数据或函数。每个函数都有一个prototype属性,这个属性是一个对象&am…...
做汽配的都上什么网站/今日热点新闻一览
转自AI Studio,原文链接:[PaddleSpeech]助力视频字幕生成演讲稿提取 - 飞桨AI Studio 在导师的项目的启发下,想着做出来这个视频分割以及文本提取的案例 输入: 一个mp4或者MP4文件的视频 输出: 一个csv的对话文本 项目…...
中山市建设局网站/如何进行网站性能优化?
我不是Facebook也不是Pinterest 粉丝,所以当朋友Orli发给我 Pinvolve的链接时,我很惊奇,它把 Facebook的动态更新以Pinterest式风格呈现出来,我很喜欢这个。在我眼里它提供了更好地方式来浏览世界上最大的社交网络,即使…...
深圳优化公司/网络建站优化科技
Erasure Codes 基本思想 优点 缺点 Reed-Solomon (RS) 通常称为RS码,是一种线性分组循环冗余码。RS码中编码后的数据通常包括数据信息和校正信息。而在RS码中信息并不是以bit位进行处理的,而是以数位bit组成一个码中的符号位进行处理。通常编码符…...
江苏网站开发/做网站建网站公司
博士学位个人简历范文博士学位个人求职简历范文由yjbys提供整理,转载博士学位个人求职简历范文请标明出处求 职 目 标谋求高校或科研院所及相关企事业单位的工作,从事教学或科研工作。个 人 信 息姓 名 XXX 性 别 男 出生日期 ***毕业院校 浙江大学 学 历 博士 专 业…...
albedo wordpress/外贸网站建站和推广
原文地址:http://blog.csdn.net/zhangxs_3/article/details/4034811 与Queue不同的是,Topic实现的是发布/订阅模型,发布者发布的消息,可以被多个订阅者消费。现在我们建立两个订阅者,一个发布者,循环给这个…...