Skip to content

Riak CS doesn't like SHA-256? #1019

@iby

Description

@iby

While trying to setup the an instance I came across the problem where it didn't like a certificate with SHA-256 digest. I googled and found that earlier Erlang versions didn't support it with some references to Riak.

2014-11-19 19:55:24.619 [error] <0.818.0> gen_fsm <0.818.0> in state hello terminated with reason: no function clause matching ssl_certificate:signature_type({1,2,840,113549,1,1,11}) line 174
2014-11-19 19:55:24.624 [error] <0.818.0> CRASH REPORT Process <0.818.0> with 0 neighbours exited with reason: no function clause matching ssl_certificate:signature_type({1,2,840,113549,1,1,11}) line 174 in gen_fsm:terminate/7 line 611
2014-11-19 19:55:24.624 [error] <0.57.0> Supervisor ssl_connection_sup had child undefined started with {ssl_connection,start_link,undefined} at <0.818.0> exit with reason no function clause matching ssl_certificate:signature_type({1,2,840,113549,1,1,11}) line 174 in context child_terminated
2014-11-19 19:55:24.625 [error] <0.469.0> application: mochiweb, "Accept failed error", "{'EXIT',\n    {{function_clause,\n         [{ssl_certificate,signature_type,\n              [{1,2,840,113549,1,1,11}],\n              [{file,\"ssl_certificate.erl\"},{line,174}]},\n          {ssl_cipher,filter,2,[{file,\"ssl_cipher.erl\"},{line,401}]},\n          {ssl_handshake,select_session,8,\n              [{file,\"ssl_handshake.erl\"},{line,593}]},\n          {ssl_handshake,hello,4,[{file,\"ssl_handshake.erl\"},{line,152}]},\n          {ssl_connection,hello,2,[{file,\"ssl_connection.erl\"},{line,413}]},\n          {ssl_connection,next_state,4,\n              [{file,\"ssl_connection.erl\"},{line,1929}]},\n          {gen_fsm,handle_msg,7,[{file,\"gen_fsm.erl\"},{line,494}]},\n          {proc_lib,init_p_do_apply,3,[{file,\"proc_lib.erl\"},{line,227}]}]},\n     {gen_fsm,sync_send_all_state_event,[<0.818.0>,start,infinity]}}}"
2014-11-19 19:55:24.625 [error] <0.469.0> CRASH REPORT Process <0.469.0> with 0 neighbours exited with reason: {error,accept_failed} in mochiweb_acceptor:init/3 line 34
2014-11-19 19:55:24.625 [error] <0.434.0> {mochiweb_socket_server,310,{acceptor_error,{error,accept_failed}}}
2014-11-19 19:55:24.626 [error] <0.819.0> gen_fsm <0.819.0> in state hello terminated with reason: no function clause matching ssl_certificate:signature_type({1,2,840,113549,1,1,11}) line 174
2014-11-19 19:55:24.626 [error] <0.819.0> CRASH REPORT Process <0.819.0> with 0 neighbours exited with reason: no function clause matching ssl_certificate:signature_type({1,2,840,113549,1,1,11}) line 174 in gen_fsm:terminate/7 line 611
2014-11-19 19:55:24.626 [error] <0.57.0> Supervisor ssl_connection_sup had child undefined started with {ssl_connection,start_link,undefined} at <0.819.0> exit with reason no function clause matching ssl_certificate:signature_type({1,2,840,113549,1,1,11}) line 174 in context child_terminated
2014-11-19 19:55:24.627 [error] <0.470.0> application: mochiweb, "Accept failed error", "{'EXIT',\n    {{function_clause,\n         [{ssl_certificate,signature_type,\n              [{1,2,840,113549,1,1,11}],\n              [{file,\"ssl_certificate.erl\"},{line,174}]},\n          {ssl_cipher,filter,2,[{file,\"ssl_cipher.erl\"},{line,401}]},\n          {ssl_handshake,select_session,8,\n              [{file,\"ssl_handshake.erl\"},{line,593}]},\n          {ssl_handshake,hello,4,[{file,\"ssl_handshake.erl\"},{line,152}]},\n          {ssl_connection,hello,2,[{file,\"ssl_connection.erl\"},{line,413}]},\n          {ssl_connection,next_state,4,\n              [{file,\"ssl_connection.erl\"},{line,1929}]},\n          {gen_fsm,handle_msg,7,[{file,\"gen_fsm.erl\"},{line,494}]},\n          {proc_lib,init_p_do_apply,3,[{file,\"proc_lib.erl\"},{line,227}]}]},\n     {gen_fsm,sync_send_all_state_event,[<0.819.0>,start,infinity]}}}"
2014-11-19 19:55:24.627 [error] <0.470.0> CRASH REPORT Process <0.470.0> with 0 neighbours exited with reason: {error,accept_failed} in mochiweb_acceptor:init/3 line 34
2014-11-19 19:55:24.643 [error] <0.820.0> gen_fsm <0.820.0> in state hello terminated with reason: no function clause matching ssl_certificate:signature_type({1,2,840,113549,1,1,11}) line 174
2014-11-19 19:55:24.643 [error] <0.820.0> CRASH REPORT Process <0.820.0> with 0 neighbours exited with reason: no function clause matching ssl_certificate:signature_type({1,2,840,113549,1,1,11}) line 174 in gen_fsm:terminate/7 line 611
2014-11-19 19:55:24.643 [error] <0.57.0> Supervisor ssl_connection_sup had child undefined started with {ssl_connection,start_link,undefined} at <0.820.0> exit with reason no function clause matching ssl_certificate:signature_type({1,2,840,113549,1,1,11}) line 174 in context child_terminated
2014-11-19 19:55:24.643 [error] <0.488.0> application: mochiweb, "Accept failed error", "{'EXIT',\n    {{function_clause,\n         [{ssl_certificate,signature_type,\n              [{1,2,840,113549,1,1,11}],\n              [{file,\"ssl_certificate.erl\"},{line,174}]},\n          {ssl_cipher,filter,2,[{file,\"ssl_cipher.erl\"},{line,401}]},\n          {ssl_handshake,select_session,8,\n              [{file,\"ssl_handshake.erl\"},{line,593}]},\n          {ssl_handshake,hello,4,[{file,\"ssl_handshake.erl\"},{line,152}]},\n          {ssl_connection,hello,2,[{file,\"ssl_connection.erl\"},{line,413}]},\n          {ssl_connection,next_state,4,\n              [{file,\"ssl_connection.erl\"},{line,1929}]},\n          {gen_fsm,handle_msg,7,[{file,\"gen_fsm.erl\"},{line,494}]},\n          {proc_lib,init_p_do_apply,3,[{file,\"proc_lib.erl\"},{line,227}]}]},\n     {gen_fsm,sync_send_all_state_event,[<0.820.0>,start,infinity]}}}"
2014-11-19 19:55:24.643 [error] <0.488.0> CRASH REPORT Process <0.488.0> with 0 neighbours exited with reason: {error,accept_failed} in mochiweb_acceptor:init/3 line 34
2014-11-19 19:55:24.690 [error] <0.838.0> gen_fsm <0.838.0> in state hello terminated with reason: no function clause matching ssl_certificate:signature_type({1,2,840,113549,1,1,11}) line 174
2014-11-19 19:55:24.691 [error] <0.838.0> CRASH REPORT Process <0.838.0> with 0 neighbours exited with reason: no function clause matching ssl_certificate:signature_type({1,2,840,113549,1,1,11}) line 174 in gen_fsm:terminate/7 line 611
2014-11-19 19:55:24.691 [error] <0.57.0> Supervisor ssl_connection_sup had child undefined started with {ssl_connection,start_link,undefined} at <0.838.0> exit with reason no function clause matching ssl_certificate:signature_type({1,2,840,113549,1,1,11}) line 174 in context child_terminated
2014-11-19 19:55:24.691 [error] <0.489.0> application: mochiweb, "Accept failed error", "{'EXIT',\n    {{function_clause,\n         [{ssl_certificate,signature_type,\n              [{1,2,840,113549,1,1,11}],\n              [{file,\"ssl_certificate.erl\"},{line,174}]},\n          {ssl_cipher,filter,2,[{file,\"ssl_cipher.erl\"},{line,401}]},\n          {ssl_handshake,select_session,8,\n              [{file,\"ssl_handshake.erl\"},{line,593}]},\n          {ssl_handshake,hello,4,[{file,\"ssl_handshake.erl\"},{line,152}]},\n          {ssl_connection,hello,2,[{file,\"ssl_connection.erl\"},{line,413}]},\n          {ssl_connection,next_state,4,\n              [{file,\"ssl_connection.erl\"},{line,1929}]},\n          {gen_fsm,handle_msg,7,[{file,\"gen_fsm.erl\"},{line,494}]},\n          {proc_lib,init_p_do_apply,3,[{file,\"proc_lib.erl\"},{line,227}]}]},\n     {gen_fsm,sync_send_all_state_event,[<0.838.0>,start,infinity]}}}"
2014-11-19 19:55:24.692 [error] <0.489.0> CRASH REPORT Process <0.489.0> with 0 neighbours exited with reason: {error,accept_failed} in mochiweb_acceptor:init/3 line 34
2014-11-19 19:55:24.726 [error] <0.434.0> {mochiweb_socket_server,310,{acceptor_error,{error,accept_failed}}}
2014-11-19 19:55:24.827 [error] <0.434.0> {mochiweb_socket_server,310,{acceptor_error,{error,accept_failed}}}
2014-11-19 19:55:24.928 [error] <0.434.0> {mochiweb_socket_server,310,{acceptor_error,{error,accept_failed}}}

I followed this guide on how to generate signed certificates, which is considerably better than the one in the documentation and also includes steps on how to generate the CA. Probably would help others too if you use that instead of what you have there now.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions