草庐IT

安全计算系统

全部标签

ruby - 使用安全转换验证使用 Ruby/OpenSSL 创建的 RSA 签名

我正在尝试为我的应用程序实现一个简单的许可key方案,但我遇到了重大障碍。我正在按照OpenSSLforLicenseKeys中的示例进行操作.自从该博文写于2004年并且OpenSSL在OSX上已被弃用后,我尝试使用SecurityTransformsAPI代替OpenSSL来完成许可证key验证。但是,我正在使用OpenSSL生成私钥和公钥;许可证key由Ruby网络应用程序使用私钥生成,该应用程序使用来自购买者电子邮件地址的SHA-256摘要的RubyOpenSSL包装器库。问题是,我所做的任何事情似乎都无法使用安全转换API验证的OpenSSL从Ruby生成签名。我正在处理的R

arrays - 从每个数组中删除是否安全?

是否可以在通过each遍历Array时安全地删除元素?第一个测试看起来很有希望:a=(1..4).to_aa.each{|i|a.delete(i)ifi==2}#=>[1,3,4]但是,我找不到确凿的事实:是否安全(设计)从哪个Ruby版本开始它是安全的在过去的某些时候,它似乎是notpossibletodo:It'snotworkingbecauseRubyexitsthe.eachloopwhenattemptingtodeletesomething.documentation没有说明迭代期间的可删除性。我不是在寻找reject或delete_if。我想对数组的元素做一些事情,有

ruby - Jekyll 默认使用系统 Ruby 版本而不是 RVM 版本

我已经查看了数十篇关于此的帖子,但仍然不太明白/没有找到相同的情况。基本上,我有默认设置为Ruby2.0.0的RVM,但是当我使用我的Jekyll页面进入目录并运行时jekyllserve结果是/Library/Ruby/Site/1.8/rubygems/dependency.rb:298:in`to_specs':Couldnotfind'jekyll'(>=0)among5totalgem(s)(Gem::LoadError)from/Library/Ruby/Site/1.8/rubygems/dependency.rb:309:in`to_spec'from/Library/

ruby - 为什么 Ruby 使用自己的安全导航运算符语法?

Ruby2.3.0引入了安全导航语法,它通过引入一个新的运算符来简化链式方法调用的nil处理,该运算符仅在先前语句的值不是nil。这是一个已经存在于C#、Groovy和Swift中的特性。例如inGroovy,语法是foo?.bar这基本上意味着结果值是foo.bar除非foo是null,在这种情况下返回值也是null因此不会抛出异常。还有C#(称为空条件运算符)和Swift(称为可选链接表达式)使用此表示法。所以语法在其他语言中似乎是相当标准的。现在,为什么在Ruby中语法是foo&.bar代替? 最佳答案 此答案基于thedis

ruby - 如何等待系统命令结束

我正在使用Ruby中的系统命令转换XLS2CSV文件。转换后我正在处理CSV文件,但是当程序要处理文件时转换仍在运行,所以那时它们不存在。谁能告诉我是否可以让Ruby等待系统命令完成的正确时间?现在我正在使用:sleep20但是如果一次要花更长的时间,那当然是不对的。我具体做的是这样的:#Callontheprogramtoconvertxlscommand="C:/Development/Tools/xls2csv/xls2csv.exeC:/TDLINK/file1.xls"system(command)do_stuffdefdo_stuff#Thisiswhereiusefile

ruby - 如何计算数组中对象的平均值?

假设我有一个这样的数组:[{"player_id"=>1,"number_of_matches"=>2,"goals"=>5},{"player_id"=>2,"number_of_matches"=>4,"goals"=>10}]我想要所有球员每场比赛的平均进球数,不是每个球员的平均进球数,而是总平均进球数。我想用.each来做这件事并存储每个单独的平均值,最后将它们全部相加并除以我拥有的玩家数量。但是,我正在寻找一种Ruby/单行方式来执行此操作。 最佳答案 根据要求,一行:avg=xs.map{|x|x["goals"].to

Ruby:如何计算字符串开头和结尾的空格数?

要计算字符串s开头和结尾的空格数,我这样做:s.index(/[^]/)#Numberofspacesatthebeginningofss.reverse.index(/[^]/)#Numberofspacesattheendofs当s包含仅单独处理的空格时,此方法需要极端情况。是否有更好(更优雅/更高效)的方法? 最佳答案 另一个版本,这个一定是最短的s[/\A*/].sizes[/*\z/].size 关于Ruby:如何计算字符串开头和结尾的空格数?,我们在StackOverflow

ruby-on-rails - RVM 查找系统 gems 的可执行文件

我已经安装了RVM和ruby​​版本。但是,如果我启动控制台并运行命令railsserver、bundleinstall等。我会收到此错误bash:/usr/bin/rails:/usr/bin/ruby1.8:badinterpreter:Nosuchfileordirectory但如果我先运行rvmuse1.9.2,那么一切都正常。我尝试使用`rvmuse--default1.9.2'但没有任何改变。这是否意味着它使用的ruby与RVM中的ruby不同?提前致谢! 最佳答案 rubygemsbin文件夹和PATH的解释哦。你没有

ruby-on-rails - 信用系统 : history based or balance based?

我打算写一个简单的信用系统,用户可以在系统中“添加”、“扣除”信用。目前我正在考虑两种方法。简单一:将用户的信用存储为数据库中的balance字段,记录所有操作(“add”、“deduct”)但不用于计算最新余额.基于历史:不要将余额存储在数据库中。余额是通过查看交易历史来计算的,例如(“加”,“减”)我认为这两种情况都可行,但我希望了解在设计此类系统时是否有任何注意事项,特别是我更喜欢Historybased系统。或者,有没有我正在使用的引用实现或开源模块?更新:或者是否有任何基于Ruby/Rail的模块,例如AuthLogic,这样我就可以即插即用我现有的代码而无需重新发明轮子(例

ruby-on-rails - 如何计算数组中具有特定属性值的项目?

在我的应用程序中,我有一个名为@apps的数组,它由ActiveRecord加载,其中包含包含应用程序名称、环境等的记录。我目前正在使用@apps.count获取数组中的应用程序数量,但我无法计算数组中environment=0.我尝试了@apps.count(0)但没有成功,因为每条记录都有多个字段。我也试过类似@apps.count{|environment|environment=0}但什么也没发生。有什么建议吗? 最佳答案 只需使用select来缩小您想要的范围:@apps.select{|a|a.environment==