My issue was slightly different than yours, in that I was burning way too
much CPU verifying 384 bit client certificates for TLS. The solution was to
have nginx do TLS termination, and proxy decrypted traffic to my Go server,
rather than doing TLS termination in Go.

The first place I would start looking is either the LibreSSL or OpenSSL
libraries. LibreSSL is a cleanup of OpenSSL, which has grown messy over the
years. Both of these contain a crypto library which does what you want.
Here is what it looks like in LibreSSL:
https://man.openbsd.org/ECDSA_SIG_new.3

-- Marcin

On Thu, Oct 8, 2020 at 2:30 AM Shobhit Srivastava <simplysh...@gmail.com>
wrote:

> Hey Marcin
>
> Can you give me the pointer on C library and if can be used in Cgo .
>
> Thanks
>
> On Wed, 7 Oct 2020, 22:27 Shobhit Srivastava, <simplysh...@gmail.com>
> wrote:
>
>> Yeah the inclination is towards 512 curve only so need to optimise it.
>>
>> Will check out the C library. Thanks
>>
>>
>>
>> On Wed, 7 Oct 2020, 22:22 Marcin Romaszewicz, <marc...@gmail.com> wrote:
>>
>>> secp256r1 has been hand optimized for performance, the others haven't.
>>>
>>> If performance there matters to you, it's actually faster to call out to
>>> C libraries to verify 384 and 512 bit curves.
>>>
>>> On Wed, Oct 7, 2020 at 9:27 AM Shobhit Srivastava <simplysh...@gmail.com>
>>> wrote:
>>>
>>>> Hi All
>>>>
>>>> I have tried to do the performance analysis for different curve in
>>>> golang and got below output:
>>>> for secp256r1 I got 28000 Signature verified per second
>>>> for secp384r1 I got 1600 Signature verified per second
>>>> for secp521r1 I got 700 Signature verified per second
>>>>
>>>> Is there something I did wrong or is this the usual results?
>>>>
>>>> Let me know if someone has done performance comparison.
>>>>
>>>> Best,
>>>> Shobhit
>>>>
>>>> --
>>>> You received this message because you are subscribed to the Google
>>>> Groups "golang-nuts" group.
>>>> To unsubscribe from this group and stop receiving emails from it, send
>>>> an email to golang-nuts+unsubscr...@googlegroups.com.
>>>> To view this discussion on the web visit
>>>> https://groups.google.com/d/msgid/golang-nuts/fdc14759-b995-43af-948d-cdb2201e4718n%40googlegroups.com
>>>> <https://groups.google.com/d/msgid/golang-nuts/fdc14759-b995-43af-948d-cdb2201e4718n%40googlegroups.com?utm_medium=email&utm_source=footer>
>>>> .
>>>>
>>>

-- 
You received this message because you are subscribed to the Google Groups 
"golang-nuts" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to golang-nuts+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/golang-nuts/CA%2Bv29Lsf7yRFewPnGX%2BTKKpThH6f_vO-%3DuDopzThDAqKsrRpVQ%40mail.gmail.com.

Reply via email to