<%= t 'Cipher suite:' %> <%= @suite %>

<% iana_ciphers = Hash[@ciphers.collect { |c| [Rails.application.config.openssl_ciphers[c.name], c] }] Rails.application.config.user_agents_ciphers.each do |ua, support| cipher = (support['ciphers'].collect(&:first) & iana_ciphers.keys).first if cipher cipher = iana_ciphers[cipher] params = cipher.params kex = params[:kex] auth = params[:auth] enc = params[:enc] mac = params[:mac] pfs = params[:pfs] end %> <% if cipher %> <%= cipher_kex_type_cell kex&.first %> <%= cipher_auth_type_cell auth&.first %> <%= cipher_enc_type_cell enc&.first %> <%= cipher_enc_key_size_cell enc&.[] 1 %> <%= cipher_enc_block_size_cell enc&.[] 2 %> <%= cipher_enc_mode_cell enc&.last %> <%= cipher_mac_type_cell mac&.first %> <%= cipher_mac_size_cell mac&.last %> <%= cipher_pfs_cell pfs %> <% else %> <% end %> <% end %>
<%= t 'User agent' %> <%= t 'Name' %> <%= t 'Key exchange' %> <%= t 'Authentication' %> <%= t 'Encryption' %> <%= t 'MAC' %> <%= t 'PFS' %>
<%= t 'Type' %> <%= t 'Key size' %> <%= t 'Block size' %> <%= t 'Mode' %> <%= t 'Type' %> <%= t 'Size' %>
<%= ua %><%= cipher_name_label cipher %><%= label t('Not supported'), :error %>

<% @ciphers.each do |cipher| params = cipher.params kex = params[:kex] auth = params[:auth] enc = params[:enc] mac = params[:mac] pfs = params[:pfs] %> <%= cipher_kex_type_cell kex&.first %> <%= cipher_auth_type_cell auth&.first %> <%= cipher_enc_type_cell enc&.first %> <%= cipher_enc_key_size_cell enc&.[] 1 %> <%= cipher_enc_block_size_cell enc&.[] 2 %> <%= cipher_enc_mode_cell enc&.last %> <%= cipher_mac_type_cell mac&.first %> <%= cipher_mac_size_cell mac&.last %> <%= cipher_pfs_cell pfs %> <% end %>
<%= t 'Name' %> <%= t 'Key exchange' %> <%= t 'Authentication' %> <%= t 'Encryption' %> <%= t 'MAC' %> <%= t 'PFS' %>
<%= t 'Type' %> <%= t 'Key size' %> <%= t 'Block size' %> <%= t 'Mode' %> <%= t 'Type' %> <%= t 'Size' %>
<%= cipher_name_label cipher %>