anchor.diff:  	       end, Conditions).
   
   crypto_name_supported(Tag, CryptoName, Supported) ->
  -    lists:member(CryptoName, proplists:get_value(Tag,Supported,[])).
  +    Vs = case proplists:get_value(Tag,Supported,[]) of
  +             [] when Tag == curves -> crypto:ec_curves();
  +             L -> L
  +         end,
  +    lists:member(CryptoName, Vs).
   
   len_supported(Name, Len) ->
       try
  
positive.code: supported_algorithms(public_key) ->
      select_crypto_supported(
        [
         {'ecdsa-sha2-nistp384',  [{public_keys,ecdsa}, {hashs,sha384}, {ec_curve,secp384r1}]},
         {'ecdsa-sha2-nistp521',  [{public_keys,ecdsa}, {hashs,sha512}, {ec_curve,secp521r1}]},
         {'ecdsa-sha2-nistp256',  [{public_keys,ecdsa}, {hashs,sha256}, {ec_curve,secp256r1}]},
         {'ssh-rsa',              [{public_keys,rsa},   {hashs,sha}                         ]},
         {'rsa-sha2-256',         [{public_keys,rsa},   {hashs,sha256}                      ]},
         {'rsa-sha2-512',         [{public_keys,rsa},   {hashs,sha512}                      ]},
  
negative.code: supported_algorithms(kex) ->
      select_crypto_supported(
        [
         {'ecdh-sha2-nistp384',                   [{public_keys,ecdh}, {curves,secp384r1}, {hashs,sha384}]},
         {'ecdh-sha2-nistp521',                   [{public_keys,ecdh}, {curves,secp521r1}, {hashs,sha512}]},
         {'ecdh-sha2-nistp256',                   [{public_keys,ecdh}, {curves,secp256r1}, {hashs,sha256}]},
         %% https://tools.ietf.org/html/draft-ietf-curdle-ssh-curves
         %% Secure Shell (SSH) Key Exchange Method using Curve25519 and Curve448
         {'curve25519-sha256',                    [{public_keys,eddh}, {curves,x25519}, {hashs,sha256}]},
  