1. require 'openssl'  
  2.   
  3. key = OpenSSL::PKey::RSA.new(1024)  
  4. digest = OpenSSL::Digest::SHA1.new()  
  5.   
  6. issu = sub = OpenSSL::X509::Name.new()  
  7. sub.add_entry('O''Organization')  
  8. sub.add_entry('OU''Project Implementation')  
  9. sub.add_entry('CN''Ruby OpenSSL')  
  10.   
  11. cer = OpenSSL::X509::Certificate.new()  
  12. cer.not_before = Time.at(0)  
  13. cer.not_after = Time.at(0)  
  14. cer.public_key = key    
  15. cer.serial = 1  
  16. cer.issuer = issu  
  17. cer.subject = sub  
  18.   
  19. cer.sign(key, digest)   
  20. print cer.to_text  
  21. #补充:生成证书文件(Certificate.crt)  
  22. File.open("Certificate","w")<
12-25 21:09