2作者: lemphi7 个月前
大约三年前,我回忆起小时候玩 Neopets 游戏是多么开心。与此同时,我也在寻找一个项目来更好地学习 Rust 和 SolidJS。所以… 我想制作自己的虚拟宠物浏览器游戏会是一个有趣的练习方式!从那以后,我几乎每天都在为此努力,而且… 它已经发展了很多!这里有一些方便的要点列表: 技术细节: * 后端单体 Rust 服务器运行在单个每月 5 美元的 VPS 上 * 精简前端,只有 3 个依赖项(SolidJS、Solid Router 和 Mutative) * 大约 130,000 行代码(前端 + 后端) * Rust 服务器使用 axum、sqlx、tokio、rand、strum、tungstenite(websockets) * 3 年内没有服务器崩溃或数据丢失(感谢 Rust + Postgres!) * 几乎所有图形(500 多个资源)都是 SVG,可在每个缩放级别实现完美的细节 * 完全响应式移动端,可在所有现代浏览器和设备上玩 * 玩家行为的 Actor 模型实现了简单的并行、多核扩展 * 单页应用程序,在初始页面加载时预加载整个游戏世界 * 页面之间即时导航(无需额外的页面获取) * 轻量级游戏引擎,用于小游戏,由自定义 WebGL 着色器提供支持 * Rust 是浏览器和服务器之间共享数据结构的单一事实来源 * 自定义派生宏用于自动生成 TypeScript 绑定和二进制解码函数 * 带有自定义协议的二进制 WebSocket 消息,用于客户端-服务器通信 * 嵌套、加权随机物品奖励池的 O(1) 选择 * 小游戏无需帐户即可玩(但无法保存奖励) 功能: * 完全免费,无广告或跟踪 * 基于浏览器的多人虚拟世界,有 80 多个地点可供探索 * 深色模式切换开关 * 简单的小游戏,以显示器的刷新率流畅运行 * 公共排行榜,跟踪每个小游戏中的最高分 * 宠物训练系统,带有回合制卡牌战斗竞技场 * 动态玩家经济,有玩家运营的商店 * 玩家公会,成员可以升级以解锁福利 * 由迷宫生成算法创建的废弃矿区 * 创建/领养宠物,给它们戴帽子,给它们宠物,改变它们的颜色等 * 220 种物品可供收集(食物、玩具、化妆品、书籍、饰品、小生物等) * 游戏内货币,带有银行、拍卖、股票市场和工作系统 * 村民,你可以和他们交谈,与他们交朋友,并为他们完成任务和工作 * 可选的推送通知(例如,当您赢得拍卖时) * 38 个成就头像可供解锁 * 社交功能:结交朋友,发送礼物,分享您的最新活动 * NPC 商店会随着时间的推移补充库存(有时会有非常稀有的物品!) * 幸运系统,有方法可以提高你的运气以获得更好的奖励 * 许多谜题,解决后会奖励物品或 MP(货币) * 钓鱼、园艺、洞穴、随机事件、喷泉、画廊等 * 转盘、完成藏宝图和探索秘密! * 还有很多,但我不想剧透一切! 链接: * 网站网址:https://mochia.net * 社区 Discord:https://discord.gg/ub6z8YH866 * 游戏视频:https://www.youtube.com/watch?v=CC6beIxLq8Q * 截图相册:https://imgur.com/a/FC9f9u3 我很乐意回答任何问题,听取任何想法,或阅读任何形式的反馈或批评!
1作者: bad_boomerang7 个月前
因为一些显而易见的原因,我开了个匿名账号。我刚开始一份短期的开发合同,注意到前方似乎出现了一些问题,我担心这可能会影响我们交付产品的能力。 这家公司面向一个非常小众的奢侈品市场销售产品,并以高价分发一个原生应用程序。公司高管们对软件每次发布后都会出现漏洞感到非常不安。问题在于,我们目前的原生应用程序架构意味着攻击者已经拥有了root权限,我们无法保护任何密钥。此外,由于特定领域的特殊原因,某些用户在某些时候总是需要远程访问。虽然我想鼓励公司最终转向我们可以保护的客户端-服务器架构,但提供远程副本的需求意味着我们所能做的就是通过“隐蔽式安全”创建一些“谜题盒子”,而攻击者破解这些盒子的成本(以他们可能的小时费率计算)比我们创建它们的成本更低。 我认为他们对这些漏洞的出现反应过度,他们正推动开发团队在软件中引入更多的检查,从而损害了生产力,甚至可能损害了软件的稳定性,但同时又未能解决问题。 为了让您了解我的担忧,举个例子:我最近和我们的一位开发人员讨论了一个依赖问题,其中一些额外的许可证检查被嵌入到用户界面中,我鼓励采用更好的组合方式,将这些检查提取到特定的层中。他们回答说:“但如果我们把所有的许可证检查放在同一个地方,这不会让破解更容易吗?” 我知道这可能是一个危险信号,我应该尽快离开,但我认为自己是一个很有说服力的人,我想试一试。他们有点老派,所以我认为需要采取一种温和的方式。在很大程度上,我想尝试将问题从一个“技术问题”重新定义为一个“社会问题”,并减少对增加“隐蔽式安全”的关注,而是更多地关注追踪漏洞的来源,从而可以通过许可协议来执行相应的后果。 因此,我恳请大家帮助我完成这项工作。我想你们中的一些人以前可能遇到过这种情况,并且拥有我可以借鉴的经验,或者可能知道我可以使用的各种资源。我脑海中浮现的一个例子是大型在线游戏公司在目标机器人或其他作弊行为方面遇到的问题,这些问题的市场价值接近于零,而试图防御的工程部门的资源却很高;以此来证明这种方法的徒劳。然而,我有点担心,考虑到他们老派的作风,游戏可能不是他们会接受的例子。 相反,如果有人对简单的混淆和/或硬件加密锁之外的“低垂的果实”有任何建议,我也很乐意接受,因为如果我也可以从他们的角度提出一些建议,从而超越典型的收益递减曲线,可能会有所帮助。
1作者: didro7 个月前
大家好, 我正在做一项研究,有个问题想请教一下。当语音 AI 助手的流量激增时,你们会怎么处理?据我所知,Kubernetes 的原生自动伸缩器(HPA)通常无法及时响应这种突发流量,导致延迟过高。如果方便的话,我很乐意了解一下你们的经验。 谢谢!
12作者: codekansas7 个月前
大家好,我是 Ben,来自 K-Scale Labs (<a href="https://kscale.dev">https://kscale.dev</a>)。我们正在构建开源人形机器人。 硬件视频:<a href="https://www.youtube.com/watch?v=qhZi9rtdEKg" rel="nofollow">https://www.youtube.com/watch?v=qhZi9rtdEKg</a> 软件视频:<a href="https://www.youtube.com/watch?v=hXi3b3xXJFw" rel="nofollow">https://www.youtube.com/watch?v=hXi3b3xXJFw</a> 文档:<a href="https://docs.kscale.dev">https://docs.kscale.dev</a> Github:<a href="https://github.com/kscalelabs">https://github.com/kscalelabs</a> 五月份的 HN 帖子:<a href="https://news.ycombinator.com/item?id=44023680">https://news.ycombinator.com/item?id=44023680</a> 我创办 K-Scale 的原因是我真的很想捣鼓一个人形机器人,所以我知道如果我造一个,至少会有一个客户。在 Unitree G1 推出之前,当时最便宜的选择也要 5 万多美元,但我认为我可以用 COTS(商用现货)组件以大约 1 万美元的价格造一个,这对独立黑客和开发者来说会是一个更好的价格点。 我们使用一些 3D 打印机和从亚马逊和阿里巴巴购买的零件制造了第一个版本。它并不出色,但它让我们构建了完整的流程,从设计和制造硬件到在模拟中训练控制策略。我们实际上在两个月内完成了大部分工作,并在 YC Demo Day 之前就有一个可以站立和挥手的机器人(尽管它没啥其他用处!)。 从那时起,我们的重点就放在了如何将一个爱好级机器人变成消费级机器人,同时不增加我们的 BOM(物料清单,即所有零件的成本)或不得不建立我们自己的工厂。这出乎意料地困难。目前,许多机器人组件的供应链都经过中国,但关税使得依赖中国供应商的组件变得困难。此外,即使是 1 万美元的价格点,对于大多数客户来说,对于一个功能相当有限的人形机器人来说,也相当昂贵。 我们的解决方案是开源我们的硬件和软件。这使我们更容易应对关税和制造挑战。通过公开我们的参考设计,我们的供应商更容易找到为我们提供有竞争力的解决方案的方法,而我们的制造合作伙伴也能够更容易地调整我们的设计以适应他们的生产流程。 在需求方面,人形机器人的基本问题是它们目前基本无用,而且要让它们变得有用,这可能是一个漫长且相当耗费资金的旅程。我的期望是,像我这样对捣鼓人形机器人感兴趣的人群中存在着大量的潜在兴趣,而且这个客户群体是比更传统的以业务为中心的机器人应用更好的客户群体。作为这个客户群体中的一员,我认为开源软件和硬件将是一个强大的价值主张,特别是对于探索将人形机器人引入自己业务领域的开发者来说。 更具哲学意味的是,我认为拥有一个好的、开源的人形机器人很重要。我认为这项技术很可能比许多人目前预期的发展得更快,而由某个公司拥有的成群结队的人形机器人四处走动是很反乌托邦的。 目前,我们以 8999 美元的价格出售我们的基础人形机器人 K-Bot。我们现在出售它的主要原因,而不是等待做更多的研发,是因为我们试图在进行最终的 DfM(面向制造的设计)之前,与我们的供应商协商批量价格。例如,我们能够为执行器和末端执行器协商比普通独立开发者为小批量订单所能获得更好的批量定价。 然而,今天许多想购买人形机器人的人这样做是因为他们想要一个完全自主的机器人来做所有的家务,这是一个非常困难(尽管令人兴奋)的事情。为了解决这个问题,我们提供“完全自主”选项——它与机器人硬件相同,但我们将提供免费的硬件和软件升级,直到我们能够使机器人完全自主。通过这种方式,我们可以预先获得一些额外的现金来启动开发,并开始建立一个核心团队,他们致力于帮助我们提高机器人在各种环境中的能力。从我们客户的角度来看,这是一种降低从一家年轻的硬件公司购买第一代产品的风险的方式,并对技术的发展产生更大的影响。 构建开源软件和硬件最好的部分是被比我们更聪明的人“肢解”,所以我们很乐意听取您的反馈!
2作者: Eikon7 个月前
证书透明度系统可以保护您免受恶意 HTTPS 证书的侵害。当 CT 日志拥有可预测的私钥时,整个 Web PKI 安全模型就会崩溃。 这将危及该日志签署的每一个证书——过去、现在和未来。 我报告了 Google Chrome 信任的证书透明度基础设施中的安全漏洞。他们将其驳回为“不是漏洞”,未经同意就公开了我的私人报告,然后在几个小时后默默地实施了我的修复方案。 发现: 在基准测试过程中,我使用了 echo " " > seed.bin (32 个空格)。Sunlight 接受了这一点,并为 CT 日志生成了有效但可预测的私钥。没有警告,没有错误。 为什么这很重要: 1. 操作员正确运行:cat /dev/urandom > seed.bin 2. 文件系统损坏,用空值/空格填充种子(发生在生产环境中) 3. Sunlight 从损坏的种子中默默地生成可预测的密钥 4. CT 日志“正常”运行——有效的签名,没有错误 5. 任何知道损坏的人都可以重新创建私钥 如果没有校验和,即使是完美的操作员也会被默默地攻破。这是保护 HTTPS 证书的 PKI 基础设施。 这并非假设——文件系统损坏在生产系统中很常见。断电、内核崩溃和存储故障经常会导致部分写入和空字节。 谷歌的回应: - “不是漏洞”:https://groups.google.com/a/chromium.org/g/ct-policy/c/qboz9s8b9j8/m/B6JXa2q1BAAJ - 未经同意就发布了我的私人安全报告 - 几个小时后实施了我的确切修复方案 - https://github.com/FiloSottile/sunlight/commit/f62f9084016c4c377d3855471720d7d0cdea3663 - https://github.com/FiloSottile/sunlight/commit/32cc3ea2524e89f93febb967683c6467753f484d - 禁止我指出矛盾:https://groups.google.com/g/certificate-transparency/c/u8SsXgSFbz4/m/14ePyeCrBAAJ 额外漏洞: 他们使用 User-Agent 字符串进行身份验证。任何人都可以伪造这些标头来绕过速率限制并压垮服务: - https://github.com/FiloSottile/sunlight/blob/main/cmd/skylight/skylight.go#L176 - https://github.com/FiloSottile/sunlight/blob/main/cmd/skylight/skylight.go#L148 这是生产代码,今天被 Google Chrome 信任 (https://www.gstatic.com/ct/log_list/v3/all_logs_list.json) 请参阅“sunlight”日志。 导致我被禁的电子邮件就在这里 https://groups.google.com/g/certificate-transparency/c/u8SsXgSFbz4/m/14ePyeCrBAAJ - 请您自己判断它是否违反了任何合理的行为准则。 还有其他人因为负责任的安全披露而遭到报复吗?我们如何修复一个报告漏洞会被禁止而问题却被悄悄修补的系统?