shellus 最近回复了
sign = HASH(username + timestamp + MD5(password) )。
POST Login:{ username, timestamp , sign }
服务端怎么验证 sign ?需要服务器持有 MD5(password) 是吧?
风险点 1:服务器持有固定的 md5
风险点 2:登陆后得到的 token 或 sessionId ,仍然可以被利用。
风险点 3:后续请求没有整体签名和加密,仍然可以被监听和篡改。
最重要的,这个方法没有办法阻止中间人返回钓鱼页面或者注入恶意 JS 代码,中间人可以篡改登陆页面响应,注入一段键盘监听的 JS 脚本,或者干脆返回整个假的页面诱使用户输入密码。
评论区看下来,go 、java 、php 、python 互相替代打得不可开交
50W*24 小时也才 0.8 度电,一天就 6 毛钱左右,计较什么啊
我觉得你需要 github copliot ,这样就不用敲很多代码了,也不用敲很多符号了
你好,chatGPT 为您解答
要搭建一个 AI 识别的后台,您需要以下技术栈:
计算机视觉技术:包括图像处理、特征提取、目标检测、图像分类等方面的技术。
机器学习和深度学习技术:包括数据预处理、模型选择和训练、模型评估和调优等方面的技术。
后端开发技术:包括数据库设计、API 接口开发、数据管理和存储等方面的技术。
前端开发技术:包括用户界面设计、交互设计、页面开发等方面的技术。
对于您提到的监控识别车辆的平台,可以考虑使用开源的计算机视觉框架,如 OpenCV 、TensorFlow 、PyTorch 等,来进行图像处理和机器学习的开发。同时,您需要使用 Web 开发框架,如 Flask 、Django 等来实现后端 API 的接口开发,以及数据库的设计和管理。对于前端页面的开发,您可以选择 React 、Vue 等框架进行开发。
以下是一些可以参考的书籍和开源项目:
《 Python 计算机视觉编程》( Programming Computer Vision with Python ):介绍如何使用 Python 和 OpenCV 进行计算机视觉开发。
《 Python 深度学习》( Deep Learning with Python ):介绍如何使用 Python 和 Keras 等框架进行深度学习的开发。
开源项目:YOLOv5 、Faster R-CNN 等目标检测算法。
开源项目:Django 、Flask 等 Web 框架。
开源项目:React 、Vue 等前端框架。
希望这些信息能够帮助到您。
它们和《流畅的 Python 》在什么方面相似?
这些书和《流畅的 Python 》在很多方面都相似,比如它们都是深入剖析一门编程语言的权威指南,都对语言的底层原理进行了详细的讲解,同时又包含了实用的代码示例和最佳实践。
它们也都涵盖了语言的方方面面,从语法基础到高级特性、从应用开发到性能优化等,都有所介绍。它们都是适合初学者和有一定经验的开发者阅读的,可以帮助读者提升对语言的理解和掌握。
另外,这些书都是被业内公认的经典之作,受到了广泛的好评和推荐,成为了对应领域的标杆教材。
如果你已经熟悉 JavaScript 基础知识,那么我会推荐你阅读《 JavaScript 高级程序设计》(第 3 版)(英文原名: Professional JavaScript for Web Developers, 3rd Edition),这本书由 Nicholas C. Zakas 所著,已成为 JavaScript 领域的经典之作。
《 JavaScript 高级程序设计》详尽地讲述了 JavaScript 的方方面面,从语言基础、DOM 操作、事件处理、Ajax 技术等常用技术,到面向对象、函数式编程、模块化开发、性能优化等进阶技术,无所不包。它不仅涵盖了语言本身的知识,还介绍了开发 Web 应用所需的关键技术,是一本循序渐进、结构清晰、内容丰富的权威指南。
如果你对 JavaScript 框架和库更感兴趣,那么可以考虑阅读《 JavaScript 权威指南》(英文原名: JavaScript: The Definitive Guide )。这本书由 David Flanagan 所著,也是 JavaScript 领域的经典之作,它介绍了各种 JavaScript 库和框架的详细使用方法,例如 jQuery 、Angular 、React 、Vue 等,适合需要深入学习这些框架和库的读者。
ChatGPT 为您解答
Q1: 国内加班文化是如何形成
1. 程序员工资高,那就需要从别的方面找补回来,而程序员们也默认了这一点,别看某些人嘴硬得跟鸭子一样,但是你让他别写代码了去送外卖你看他去不去
2. 压榨从来不是因为工作量大,就像商品的售价不是因成本而决定,是否加班只看博弈,而不是工作量多不多
3. 社会就像海水不断冲刷的沙滩,每一粒沙子都会被放到应该放的地方,行业不会存在人员过多或者过少的现象,人少钱多的行业,自然会涌入大量新的从业者,人多钱少亦然
Q2: 最终的受益者是谁
没有产生收益何谈受益者?加班并不会增加收益,就像电影院所有人都站着并不会获得更好的观影体验,所以这叫内卷。
声明
我是一个一线城市的普通程序员
我们假设有 A 和 B 两个用户,他们对一个现有空白 a.txt 的编辑操作,按照时间顺序是:
A:写入 1
B:写入 2
A:写入 3
B:写入 4
一共 4 次操作,我们假设服务端会在任意时间接收到这 4 次更新(因为客户端离线编辑,联网后上传,所以顺序是不固定的)
我们假设服务器先收到第 4 个操作,那么服务端直接将 4 写入 a.txt
接着,第 3 个操作来了,我们用 3 覆盖掉了 4 就是丢了最新数据,造成了事故
所以,每次要不要更新,就是要带上更新前的 hash ,让各方达成共识,如果第三个的操作描述是:将 2 改成 3 。那么服务端在收到这条信息的时候就会检查现在是不是 2 ,不是 3 的话,“将 2 改成 3” 这个操作就会被拒绝
客户端视角-》云端视角:
1:新增文件 -》 无:创建;有,相同:忽略;有,不同:覆盖
2:更新文件(上版本 hash+更新内容)-》如果上版本 hash 等于云端现有内容,那么是正常的从 1 到 2 的更新,通过。如果上版本 hash 不等于云端现有内容,说明客户端在此次更新前,对于该文件与云端持有不同版本,那么就要形成冲突差异文件并提示用户选择。