1. 隐私和安全1.1. 数字技术给我们带来了很多好处如果没有它我们的生活将会贫乏得多1.2. 国家安全1.2.1. 从整体上保护国家免受恐怖袭击和其他国家的行动等威胁1.3. 对于个人来说安全常常与隐私混为一谈因为如果你个人生活的大部分方面都广为人知或很容易被发现你就很难感到安全2. 密码学2.1. 一种“秘密书写”的艺术从很多方面来说是我们抵御隐私攻击的最佳防御手段2.2. 加密算法需要抵御各种各样的攻击。频率分析主要用于研究和计算每个符号出现的次数2.3. 要抵御频率分析加密算法必须要做到让密文中所有符号都以大致相等的机会出现这样就没有模式可供分析2.4. 利用已知的明文即已知使用目标密钥加密的消息或者利用选定的明文诱使被攻击者用待破解密钥加密这段明文从而进行对照达到破解的目的2.5. 密码系统必须假定攻击者知道并完全理解密码系统的工作原理从而将所有的安全性都寄托在密钥上2.5.1. 与此相反的做法是假定对手不知道系统用什么加密方案、如何破解这被称为隐匿式安全(security by obscurity)即使可以工作也不会长久2.5.2. 如果有人鼓吹他们的加密系统十分安全却不愿说出其工作原理那就可以确信它并不安全2.6. 加密系统的开放式开发至关重要。密码系统需要尽可能多的专家的经验以探查漏洞2.7. 典型的浏览器知道数量惊人的证书颁发机构2.7.1. Firefox版本中有将近80个2.7.2. Chrome版本中有超过200个2.8. Lets Encrypt让我们加密是一个非营利性的证书权威机构它向任何人提供免费的证书其理念是如果获得证书很容易最终所有网站都将使用HTTPS所有流量都将被加密2.9. 密码学是现代技术的重要组成部分它是保护我们使用互联网时隐私和安全的基本机制2.9.1. 密码学能帮助所有人而不仅仅是好人2.9.2. 意味着犯罪分子、恐怖分子、儿童色情犯、贩毒集团和政府都将使用密码技术以牺牲你的利益为代价来增进他们的利益2.10. 加密代码大多是开源的任何人都可以使用2.10.1. 试图在任何国家禁止密码学都不太可能阻止它的使用2.11. 密码学本来就是极其困难的如果加上故意设置的弱点无论如何精心设计都会导致更大的失败2.11.1. 最根本的问题是我们不能在不削弱所有人加密安全性的情况下削弱恐怖分子使用的加密2.12. 强大的加密是普通人抵御政府过度干预和犯罪入侵的为数不多的防御手段之一2.13. 在任何安全系统中最薄弱的环节是相关人员他们会无意或有意地破坏过于复杂或难以使用的系统2.14. 即使每个人都努力确保安全一个坚定的对手总是可以利用4B即贿赂(bribery)、勒索(blackmail)、盗窃(burglary)、野蛮(brutality)来获得访问权2.14.1. 政府可以用坐牢来威胁那些在被要求泄露密码时拒绝的人3. 密钥加密3.1. 历史较长的密钥加密(secret-key cryptography)也称对称密钥加密因为加密和解密要使用相同的钥匙3.2. 蛮力攻击(brute force attack)即尝试所有可能的密钥以找出用来加密的那个3.3. 字典攻击(dictionary attack)就是尝试用“password”和“123456”这些常见单词和数字进行攻击3.3.1. 如果人们选择密钥时偷懒或粗心这种攻击就可以很容易成功3.4. 在任何情况下DES总是使用56位密钥随着计算机的运算速度越来越快56位的长度被证明太短了3.4.1. 到1999年的时候一台相当便宜的专用计算机就可以用一天时间使用蛮力攻击破解DES密钥。这导致了具有更长的密钥的新算法的产生3.5. AES支持128、192和256位三种密钥长度潜在的密钥数量非常多用蛮力攻击就算很多年也不会有结果除非能发现该算法的某个弱点3.6. 密钥扩散(key proliferation)要想和不相关的各方进行独立的秘密对话就要为每组会话准备不同的密钥3.6.1. 导致密钥分发更加困难4. 公钥加密4.1. 公钥加密采用了与密钥加密完全不同的思想是怀特菲尔德·迪菲(Whitfield Diffie)和马丁·赫尔曼(Martin Hellman)于1976年在斯坦福发明的借鉴了拉尔夫·默克尔(Ralph Merkle)的一些思想4.1.1. 迪菲和赫尔曼因为这项工作共同获得了2015年的图灵奖4.2. 这个想法由詹姆斯·埃利斯(James Ellis)和克利福德·科克斯(Clifford Cocks)在更早的几年前独立发现他们是英国政府通信总部的密码学家但他们的工作被一直保密到1997年所以他们不能发表该成果因此也与大部分荣誉失之交臂4.3. 在公钥加密系统里每个人都有一个密钥对(key pair)包含一个公钥和一个私钥4.3.1. 这对密钥是在数学上有关联的整数具有如下性质用其中一个密钥加密过的消息只能用另一个密钥解密反之亦然4.3.2. 公钥是真正很公开的任何人都能拿到一般是公布在网站上4.3.3. 私钥则一定要严格保持私密是一个只有这个密钥对的主人才知道的秘密4.4. 公钥加密是在互联网上进行安全通信的关键要素4.5. 公钥加密的一个缺点是其算法的运算速度慢比AES这种密钥加密算法要慢好几个数量级4.6. 通常不会用公钥加密算法加密全部数据而是分两步走先用公钥加密协商出一个临时的密钥再使用AES传输大量的数据4.7. 公钥加密方案也并非完美无缺4.8. 前向保密(forward secrecy)的技术4.8.1. 每条消息都使用如上所示的一次性密码进行加密然后该密码被丢弃4.9. 最被广泛使用的公钥加密算法称为RSA4.9.1. 这个算法是麻省理工学院的三位计算机科学家罗纳德·李维斯特(Ronald Rivest)、阿迪·沙米尔(Adi Shamir)和伦纳德·阿德曼(Leonard Adleman)在1978年发明的RSA就是这三位发明人姓氏的首字母缩写4.9.2. RSA实验室是持有RSA专利的公司曾于1991年到2007年举办过分解素因子大赛4.9.3. 它公布了一个包含着长度越来越长的巨大合数的列表设立奖金给第一个能对每个合数进行因数分解的人4.9.4. 最小的合数有100多位很快就被分解了4.9.5. 2007年这个竞赛停办之时分解出来的最大合数有193位二进制640位奖金是2万美元4.9.6. 2019年RSA-240240位795位被分解5. 消息摘要5.1. 消息摘要(message digest)或密码散列(cryptographic hash)5.2. 其创建方法是用某种算法把任意输入的比特流加密成固定长度的比特流也就是摘要或散列最终得到的结果具有如下特性无法通过计算找到别的输入来生成同样的摘要5.3. 罗纳德·李维斯特开发的MD5它生成128位的摘要5.4. SHA-1来自NIST美国国家标准技术研究所生成160位的摘要5.5. 研究表明MD5和SHA-1都有弱点因此不赞成使用它们5.6. SHA-2是美国国家安全局开发的一系列算法目前还没有已知的弱点5.7. SHA-2和SHA-3支持从224位到512位不等的摘要大小6. 匿名6.1. Tor以及Tor浏览器6.1.1. “洋葱路由器”的缩写隐喻着当对话从一个地方传递到另一个地方的过程中围绕着这些对话的层层加密6.1.2. 使用加密技术通过一系列中继结点发送互联网上的流量这样每个中继结点只知道路径上紧邻的中继结点的身份而不知道其他中继结点的身份6.1.3. 在任何时候全世界大约有7000个中继结点6.1.3.1. Tor应用程序随机选择一组中继结点并设置路径该路径不时更改甚至在单个会话期间也会更改6.1.4. Tor浏览器是使用Tor的最常见方式Firefox的一个版本已经被配置为使用Tor进行传输Tor还能适当地进行Firefox的隐私设置6.2. TAILS的系统6.2.1. “失忆隐身实时系统”它是在Linux系统上运行的能安装在DVD、USB驱动器或SD卡等可引导设备上6.2.2. 在启动后能运行Tor技术和Tor浏览器并且不会在运行它的电脑上留下任何痕迹6.2.3. 软件在TAILS的运行下使用Tor连接到因特网所以你应该是匿名的6.2.4. 不在本地二级存储上存储任何东西而只是使用主内存6.2.5. 当计算机在TAILS会话之后关闭的时候内存中的内容将被清除6.3. 比特币6.3.1. 发送和接收资金是另一个高度重视匿名性的领域6.3.2. 现金是匿名的如果你使用现金支付那么既没有记录也没有办法识别当事人6.3.3. 巧妙的密码学可以用来创造匿名货币6.3.4. 比特币是一种去中心化的数字货币或加密货币6.3.4.1. 它不由任何政府或其他政党发行或控制不像传统货币的纸币和硬币它也没有实体形式6.3.5. 比特币使用点对点协议让双方在不使用中介或可信的第三方的情况下交换比特币这是一种模拟现金的方式6.3.6. 比特币维护着一个名为区块链的所有交易的公共账本而交易背后的各方是匿名的只能通过一个实际上是加密公钥的地址来识别6.3.7. 区块链是完全公开的6.3.7.1. 比特币的匿名性更像是“冒名”的因为每个人都知道与特定地址相关的所有交易但他们不知道这个地址是你的6.3.8. 比特币是一种“虚拟货币”但可以与传统货币进行兑换
题解:学而思编程 最小消耗 【题目来源】 学而思编程:最小消耗 【题目描述】 有 nnn 个怪兽等待你去消灭。 怪兽共分为两种形态,不妨用 000 和 111 来表示。 消灭一个 000 形态的怪兽需要耗费的法力值为 aaa。 消灭一个 111 形态的怪兽需要耗费的法力值为 bbb。 你还可以使用…
downr1n技术解析:基于checkm8漏洞的iOS设备有线降级架构实现 downr1n技术解析:基于checkm8漏洞的iOS设备有线降级架构实现 【免费下载链接】downr1n downgrade tethered checkm8 idevices ios 14, 15. 项目地址: https://gitcode.com/gh_mirrors/do/downr1n iOS系统降级一直是移动设备安全研究领域的技术难题࿰…
Three.js 一团揉动教程 一团揉动 Blob Shader ▶ 在线运行案例 案例合集: 三维可视化功能案例(threehub.cn)开源仓库github地址: https://github.com/z2586300277/three-cesium-examples400个案例代码: 网盘链接 你将学到什么 ShaderMaterial 自定义…
SSTImap交互式模式实战:从SSTI漏洞到稳定Shell获取 1. 项目概述:从SSTI漏洞到交互式Shell的实战路径在Web安全测试的日常工作中,服务器端模板注入(SSTI)漏洞的发现往往能带来意想不到的突破。它不像SQL注入那样直接,也不像XSS那样直观,但一旦成功利用&#x…
CVE-bin-tool漏洞扫描中CPE与PURL优先级解析与实战 1. 项目概述:当SBOM遇上漏洞扫描,CPE与PURL的“优先级之争”最近在搞一个安全自动化项目,需要把漏洞扫描工具集成到CI/CD流水线里。选型时,CVE-bin-tool这个开源工具进入了我的视野,它主打轻量、快速,能直接…
终极指南:5步快速掌握NVIDIA Isaac ROS Visual SLAM高性能视觉定位 终极指南:5步快速掌握NVIDIA Isaac ROS Visual SLAM高性能视觉定位 【免费下载链接】isaac_ros_visual_slam Visual SLAM/odometry package based on NVIDIA-accelerated cuVSLAM 项目地址: https://gitcode.com/gh_mirrors/is/isaac_ros_visual_slam 在机器…
openEuler QoS-Deployment-Test:终极自动化测试流水线集成方案 openEuler QoS-Deployment-Test:终极自动化测试流水线集成方案 【免费下载链接】QoS-Deployment-Test Docker-based openEuler Online-Offline Co-scheduling Test Suite. 项目地址: https://gitcode.com/openeuler/QoS-Deployment-Test 前往项目官网免费下载…
Docker-JDownloader-2完整指南:容器化下载管理终极解决方案 Docker-JDownloader-2完整指南:容器化下载管理终极解决方案 【免费下载链接】docker-jdownloader-2 Docker container for JDownloader 2 项目地址: https://gitcode.com/gh_mirrors/do/docker-jdownloader-2 你是否厌倦了在不同系统上重复安装复杂的下载软件…
如何免费制作六合一收款码:终极聚合支付解决方案 如何免费制作六合一收款码:终极聚合支付解决方案 【免费下载链接】qrpay 五合一收款码在线生成,40个模板 支持微信支付、支付宝支付、手机QQ支付、京东钱包、百度钱包,PayPal五合一收款,将其二维码合并为一个二维码,无需手续费,支持qq头像,昵…
3步彻底解决Windows右键菜单混乱问题:ContextMenuManager使用全攻略 3步彻底解决Windows右键菜单混乱问题:ContextMenuManager使用全攻略 【免费下载链接】ContextMenuManager 🖱️ 纯粹的Windows右键菜单管理程序 项目地址: https://gitcode.com/gh_mirrors/co/ContextMenuManager 你是否曾为Windows右键菜单中那些…
GXDE OS下Wayland兼容性实战:从deepin-mutter原理到VMware Tools修复 如果你正在用 GXDE OS 或者任何基于 Deepin 的发行版,并且遇到了“检测到窗口系统采用 Wayland 协议,程序即将退出”这类弹窗,或者发现 VMware Tools 在 Ubuntu 24.04 这类默认 Wayland 的系统上启动失败,那这篇文章就是为你准备的…
企业AI落地困境与AgenticOps实践指南 1. 企业AI落地的现实困境与破局之道过去两年,大模型技术呈现爆发式增长,从GPT-3到GPT-4,从LLaMA到DeepSeek,模型参数规模从百亿级跃升至万亿级,多模态能力从单一文本扩展到图文音视频的综合处理。然而在企业应用层面&a…
3步彻底解决Windows右键菜单混乱问题:ContextMenuManager使用全攻略 3步彻底解决Windows右键菜单混乱问题:ContextMenuManager使用全攻略 【免费下载链接】ContextMenuManager 🖱️ 纯粹的Windows右键菜单管理程序 项目地址: https://gitcode.com/gh_mirrors/co/ContextMenuManager 你是否曾为Windows右键菜单中那些…
GXDE OS下Wayland兼容性实战:从deepin-mutter原理到VMware Tools修复 如果你正在用 GXDE OS 或者任何基于 Deepin 的发行版,并且遇到了“检测到窗口系统采用 Wayland 协议,程序即将退出”这类弹窗,或者发现 VMware Tools 在 Ubuntu 24.04 这类默认 Wayland 的系统上启动失败,那这篇文章就是为你准备的…
企业AI落地困境与AgenticOps实践指南 1. 企业AI落地的现实困境与破局之道过去两年,大模型技术呈现爆发式增长,从GPT-3到GPT-4,从LLaMA到DeepSeek,模型参数规模从百亿级跃升至万亿级,多模态能力从单一文本扩展到图文音视频的综合处理。然而在企业应用层面&a…
[C++]内存管理:串顺序存储的内存回收 在串(字符串)的顺序存储中,内存回收的方式取决于字符串的存储方式以及所使用的编程语言和相关库。以下以 C 为例进行说明,因为 C 对内存管理有较为直接的控制。 1. 基于 char 数组的串顺序存储 如果使用普通的 char 数组来存储字…
移动端游戏功耗测试实战:电流、功率、亮度和场景对比 移动端游戏功耗测试:先控制变量,再比较优化是否真的省电 摘要:功耗测试最容易犯的错误,是拿两次不同温度、不同亮度、不同场景的平均功率直接比较。本文给出一套可复现的游戏功耗测试方法,覆盖引擎特性验证、版本回归和黑盒体验测试,并说明如何把功耗与帧率、温控、CPU/G…
足球口袋教练 HarmonyOS 离线应用实战(03/20):ArkUI 首页仪表盘搭建 本文是“足球口袋教练 HarmonyOS 离线应用实战”系列第 3 篇。示例项目是一个 HarmonyOS / ArkTS / ArkUI 编写的离线足球训练助手,围绕真实页面、真实截图和可复现操作展开。 本篇要解决的问题 训练 App 的首页不能只展示欢迎语,它要解决“我现在该点哪…