Мне нужно преобразовать следующий код в Qt C++ Так что мне нужно понять, к чему эти строки.Помощь, необходимая для преобразования нескольких строк кода ruby в C++!
@key в этом коде является PEM ключ содержимого файла по OpenSSL
key = [email protected]_key.to_der
так я думаю, что это преобразование, что ключ к дер формат и затем комбинируя ее с ключом. Правильно?
Что это делает? to_sizet (key.size) Как вы можете видеть, функция возвращает [num] .pack ('V'). Но я не знаю, что это делает? Я имею в виду [num] .pavck ('V'). что это?
И что это значит. key.size - это ключ ключа?
def write_crx print "write crx..." if @verbose key = [email protected]_key.to_der File.open(@crx, 'wb') do |file| file << MAGIC file << EXT_VERSION file << to_sizet(key.size) file << to_sizet(@sig.size) file << key file << @sig File.open(@zip, 'rb') do |zip| file << zip.read end end puts "done at \"#{@crx}\"" if @verbose end def to_sizet num return [num].pack('V') end
Ну у меня есть еще один вопрос. Забыл добавить последний раз. что это делает линия?
KEY = %w(30 81 9F 30 0D 06 09 2A 86 48 86 F7 0D 01 01 01 05 00 03 81 8D 00).map{|s| s.hex}.pack('C*')
Благодарим за подробное объяснение. Это было превосходно. У меня есть еще один вопрос, можете ли вы рассказать, что делает эта линия? KEY =% w (30 81 9F 30 0D 06 09 2A 86 48 86 F7 0D 01 01 01 05 00 03 81 8D 00) .map {| s | s.hex} .pack ('C *') конечно в рубине! – defiant
@oDx См. Обновление. –