V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX  ›  iseki  ›  全部回复第 2 页 / 共 43 页
回复总数  858
1  2  3  4  5  6  7  8  9  10 ... 43  
@lesismal 工程上多一行代码也是有成本的,不能做不划算的事。我可以接受口令在妥善的哈希后传递给后端,但我不能接受把口令 base64 之后传给后端,base64 在这里就是一个收益近乎为 0 的操作(即使它的成本很低),总结下来就是一句话,不做不必要的事。
避免向后端传递原始口令是有必要的(中间设施,日志系统,甚至后端服务本身都可以有缺陷和风险),但必须弄清该怎么做,而不是简单变换一下弄得一眼看不出来就完了。
@lesismal 这文本复制的可真有意思,也怪我,下次用 Kotlin 风格的方式表达。
这个接口的风格是工程要求,你也可以看一下我在这条文本之后的跟帖,大概有这么个现实问题是不太好解决的,你可以给出你的解决方案讨论一下。
也许可以在前端对口令完成一次困难哈希,但难度和风险在于这个哈希的算法和参数从此固定不能更改,也意味着日后所有的「客户端」都要能自主完成这套逻辑。
此外再提及一点,许多密码基础设施提供的验证接口形如 verify(password, stored_credential) -> ok?,这里虽然没有明说(实际上也不可能要求) password 必须是用户的原始主口令,但一般确实可能影响到实践。
单从避免用户主口令泄露这件事上来说,要做一个可靠的方案成本比较高,前后端可能会有超过一个 RTT 的挑战响应机制。比如后端存储用用户主口令加密过的私钥,然后在用户代理(浏览器)中完成挑战响应,这样可以保证用户主口令不离开用户代理。
如果前端简单哈希一下,暂且不论能否提高安全性(加盐会很难做,固定的盐没有意义),哈希后的结果会不会缩减值空间,反过来降低安全性,可能也有待评估。
命令行用 jq ,其他场景用浏览器开发者工具,本地已有文件用 vscode 。无它,我的 json 很大,不用 jq 会卡;我需要灵活的操作和处理,浏览器 F12 正合适~
84 天前
回复了 dsvshx 创建的主题 Java Grpc 服务优化 GC 的一个问题,请教一下大佬们
话说,你的序列化反序列化 API 不支持按流处理吗?比如说我经常处理大体积的 JSON ,大一点一个对象可能 1G+,数据会在反序列化过程中被处理,比如说可能有去重之类的逻辑。 @dsvshx
86 天前
回复了 dsvshx 创建的主题 Java Grpc 服务优化 GC 的一个问题,请教一下大佬们
arena ,把 payload 弄到堆外面去,手动管理。但是这么一来…protobuf 自己解析想想就很麻烦。
长期来看这只能是个权宜之计,以后不能这么设计 API ,搞出大量大体积的 bytes
87 天前
回复了 zshstc 创建的主题 职场话题 大裁员中幸存下来了
为什么公司要划分区域总部,划分这么多级是用来干什么的呢
90 天前
回复了 rockyliang 创建的主题 Go 编程语言 关于 golang 官网一段代码的疑惑
@keakon
Go 竟然连这么基本的优化都没做😫,循环里面是空的,都不用往别处看就可以知道这个条件绝对不会被破坏啊😐 Go 真是有点···
有辩大经的功夫,不如多去给这位 CEO 做做个人影响力宣传,吃瓜群众看见没用,得让正确的人看见。
这种事公司肯定都是合法的,想不通的不妨自己翻翻签下的劳动合同去,所以这种事不要在法律上为自己找什么出路,法律不向着你你干啥呢。
还是那句话,批判的武器…武器的批判
@poltao 实际就是这样的,什么叫全职义务啊😋,劳动合同本质上就是卖身契啊
其实真要算的话八小时之外的产出搞不好也是公司的(
注意了啊,这家的产品是 api7 ,依托 api6 搞的东西,赶紧排查下自己有没有用吧😋
改进构建系统,抛弃 M4 Makefile 这种依赖大量难懂的 shell 的方案。
你看 Gradle 虽然更复杂,但是只要你肯看代码,留这种后门是很容易发现的。但 shell 就不行了,一个 expansion 指不定变成什么样,就像 C 的 macro 一样复杂。
100 天前
回复了 Zzhiter 创建的主题 Java 关于 Java 的如何进行单体应用 tracing 的问题
主要还是得考虑跨线程时怎么处理
这次的情况,无论是 mapped without write access 还是 mapped PROT_NONE 亦或者是 unmapped addresses ,如果按照上文引用的段落来看,都应该是 SIGSEGV

@lslqtz
@lslqtz 至于 Mac 是否 POSIX 兼容,这我确实不清楚了,我记得好像 Windows 也说自己 POSIX 兼容来着,也确实针对 POSIX 做了一些工作,但我就不太了解了。
@lslqtz 关于这个,我查阅了下参考,不确定引用的段落是否正确,欢迎指正:
> Memory Protection
>
> When an object is mapped, various application accesses to the mapped region may result in signals. In this context, SIGBUS is used to indicate an error using the mapped object, and SIGSEGV is used to indicate a protection violation or misuse of an address:
> - A mapping may be restricted to disallow some types of access.
> - Write attempts to memory that was mapped without write access, or any access to memory mapped PROT_NONE, shall result in a SIGSEGV signal.
> - References to unmapped addresses shall result in a SIGSEGV signal.
> - Reference to whole pages within the mapping, but beyond the current length of the object, shall result in a SIGBUS signal.
> - The size of the object is unaffected by access beyond the end of the object (even if a SIGBUS is not generated).

---- The Open Group Base Specifications Issue 7, 2018 Edition
https://pubs.opengroup.org/onlinepubs/9699919799/functions/V2_chap02.html#tag_15_08_03_03
1  2  3  4  5  6  7  8  9  10 ... 43  
关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2642 人在线   最高记录 6679   ·     Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.5 · 28ms · UTC 14:45 · PVG 22:45 · LAX 07:45 · JFK 10:45
Developed with CodeLauncher
♥ Do have faith in what you're doing.