Loading…

Efficient Implementation of a Crypto Library Using Web Assembly

We implement a cryptographic library using Web Assembly. Web Assembly is expected to show better performance than Javascript. The proposed library provides comprehensive algorithm sets including revised CHAM, Hash Message Authentication Code (HMAC), and ECDH using the NIST P-256 curve to provide con...

Full description

Saved in:
Bibliographic Details
Published in:Electronics (Basel) 2020-11, Vol.9 (11), p.1839
Main Authors: Park, BoSun, Song, JinGyo, Seo, Seog Chung
Format: Article
Language:English
Citations: Items that this one cites
Items that cite this one
Online Access:Get full text
Tags: Add Tag
No Tags, Be the first to tag this record!
cited_by cdi_FETCH-LOGICAL-c291t-cc0b206bd4fc7f4a43d6f5fc71b6d6374d7e5c2b4805d9ea59f0dff38dea96e73
cites cdi_FETCH-LOGICAL-c291t-cc0b206bd4fc7f4a43d6f5fc71b6d6374d7e5c2b4805d9ea59f0dff38dea96e73
container_end_page
container_issue 11
container_start_page 1839
container_title Electronics (Basel)
container_volume 9
creator Park, BoSun
Song, JinGyo
Seo, Seog Chung
description We implement a cryptographic library using Web Assembly. Web Assembly is expected to show better performance than Javascript. The proposed library provides comprehensive algorithm sets including revised CHAM, Hash Message Authentication Code (HMAC), and ECDH using the NIST P-256 curve to provide confidentiality, data authentication, and key agreement functions. To optimize the performance of revised CHAM in the proposed library, we apply an existing method that is a four-round combining method and additionally propose the precomputation method to CHAM-64/128. The proposed revised CHAM showed an approximate 2.06 times (CHAM-64/128), approximate 2.13 times (CHAM-128/128), and approximate 2.63 times (CHAM-128/256) performance improvement in Web Assembly compared to JavaScript. In addition, CHAM-64/128 applying the precomputation method showed an improved performance by approximately 1.2 times more than the existing CHAM-64/128. For the ECDH using P-256 curve, the naive implementation of ECDH is vulnerable to side-channel attacks (SCA), e.g., simple power analysis (SPA), and timing analysis (TA). Thus, we apply an SPA and TA resistant scalar multiplication method, which is a core operation in ECDH. We present atomic block-based scalar multiplication by revising the previous work. Existing atomic blocks show a performance overhead of 55%, 23%, and 37%, but atomic blocks proposed to use only P=(X,Y,Z) show 18%, 6%, and 11% performance overhead. The proposed Web Assembly-based crypto library provides enhanced performance and resistance against SCA thus, it can be used in various web-based applications.
doi_str_mv 10.3390/electronics9111839
format article
fullrecord <record><control><sourceid>crossref</sourceid><recordid>TN_cdi_crossref_primary_10_3390_electronics9111839</recordid><sourceformat>XML</sourceformat><sourcesystem>PC</sourcesystem><sourcerecordid>10_3390_electronics9111839</sourcerecordid><originalsourceid>FETCH-LOGICAL-c291t-cc0b206bd4fc7f4a43d6f5fc71b6d6374d7e5c2b4805d9ea59f0dff38dea96e73</originalsourceid><addsrcrecordid>eNplkMlKA0EURQtRMMT8gKv6gdYaenorCSFqoCEbg8umhvekpCeqetN_b4suBO_mntXlchi7l-JBaxCP2KGb4zgEl0BKWWu4YhslKshAgbr-w7dsl9KnWANS11ps2NORKLiAw8xP_dRhv5KZwzjwkbjhh7hM88ibYKOJC7-kMHzwd7R8nxL2tlvu2A2ZLuHut7fs8nx8O7xmzfnldNg3mVMg58w5YZUorc_JVZSbXPuSipWlLX2pq9xXWDhl81oUHtAUQMIT6dqjgRIrvWXqZ9fFMaWI1E4x9OunVor220L734L-AvrCVGc</addsrcrecordid><sourcetype>Aggregation Database</sourcetype><iscdi>true</iscdi><recordtype>article</recordtype></control><display><type>article</type><title>Efficient Implementation of a Crypto Library Using Web Assembly</title><source>Publicly Available Content Database (Proquest) (PQ_SDU_P3)</source><creator>Park, BoSun ; Song, JinGyo ; Seo, Seog Chung</creator><creatorcontrib>Park, BoSun ; Song, JinGyo ; Seo, Seog Chung</creatorcontrib><description>We implement a cryptographic library using Web Assembly. Web Assembly is expected to show better performance than Javascript. The proposed library provides comprehensive algorithm sets including revised CHAM, Hash Message Authentication Code (HMAC), and ECDH using the NIST P-256 curve to provide confidentiality, data authentication, and key agreement functions. To optimize the performance of revised CHAM in the proposed library, we apply an existing method that is a four-round combining method and additionally propose the precomputation method to CHAM-64/128. The proposed revised CHAM showed an approximate 2.06 times (CHAM-64/128), approximate 2.13 times (CHAM-128/128), and approximate 2.63 times (CHAM-128/256) performance improvement in Web Assembly compared to JavaScript. In addition, CHAM-64/128 applying the precomputation method showed an improved performance by approximately 1.2 times more than the existing CHAM-64/128. For the ECDH using P-256 curve, the naive implementation of ECDH is vulnerable to side-channel attacks (SCA), e.g., simple power analysis (SPA), and timing analysis (TA). Thus, we apply an SPA and TA resistant scalar multiplication method, which is a core operation in ECDH. We present atomic block-based scalar multiplication by revising the previous work. Existing atomic blocks show a performance overhead of 55%, 23%, and 37%, but atomic blocks proposed to use only P=(X,Y,Z) show 18%, 6%, and 11% performance overhead. The proposed Web Assembly-based crypto library provides enhanced performance and resistance against SCA thus, it can be used in various web-based applications.</description><identifier>ISSN: 2079-9292</identifier><identifier>EISSN: 2079-9292</identifier><identifier>DOI: 10.3390/electronics9111839</identifier><language>eng</language><ispartof>Electronics (Basel), 2020-11, Vol.9 (11), p.1839</ispartof><lds50>peer_reviewed</lds50><oa>free_for_read</oa><woscitedreferencessubscribed>false</woscitedreferencessubscribed><citedby>FETCH-LOGICAL-c291t-cc0b206bd4fc7f4a43d6f5fc71b6d6374d7e5c2b4805d9ea59f0dff38dea96e73</citedby><cites>FETCH-LOGICAL-c291t-cc0b206bd4fc7f4a43d6f5fc71b6d6374d7e5c2b4805d9ea59f0dff38dea96e73</cites><orcidid>0000-0001-8016-2808</orcidid></display><links><openurl>$$Topenurl_article</openurl><openurlfulltext>$$Topenurlfull_article</openurlfulltext><thumbnail>$$Tsyndetics_thumb_exl</thumbnail><link.rule.ids>314,780,784,27924,27925</link.rule.ids></links><search><creatorcontrib>Park, BoSun</creatorcontrib><creatorcontrib>Song, JinGyo</creatorcontrib><creatorcontrib>Seo, Seog Chung</creatorcontrib><title>Efficient Implementation of a Crypto Library Using Web Assembly</title><title>Electronics (Basel)</title><description>We implement a cryptographic library using Web Assembly. Web Assembly is expected to show better performance than Javascript. The proposed library provides comprehensive algorithm sets including revised CHAM, Hash Message Authentication Code (HMAC), and ECDH using the NIST P-256 curve to provide confidentiality, data authentication, and key agreement functions. To optimize the performance of revised CHAM in the proposed library, we apply an existing method that is a four-round combining method and additionally propose the precomputation method to CHAM-64/128. The proposed revised CHAM showed an approximate 2.06 times (CHAM-64/128), approximate 2.13 times (CHAM-128/128), and approximate 2.63 times (CHAM-128/256) performance improvement in Web Assembly compared to JavaScript. In addition, CHAM-64/128 applying the precomputation method showed an improved performance by approximately 1.2 times more than the existing CHAM-64/128. For the ECDH using P-256 curve, the naive implementation of ECDH is vulnerable to side-channel attacks (SCA), e.g., simple power analysis (SPA), and timing analysis (TA). Thus, we apply an SPA and TA resistant scalar multiplication method, which is a core operation in ECDH. We present atomic block-based scalar multiplication by revising the previous work. Existing atomic blocks show a performance overhead of 55%, 23%, and 37%, but atomic blocks proposed to use only P=(X,Y,Z) show 18%, 6%, and 11% performance overhead. The proposed Web Assembly-based crypto library provides enhanced performance and resistance against SCA thus, it can be used in various web-based applications.</description><issn>2079-9292</issn><issn>2079-9292</issn><fulltext>true</fulltext><rsrctype>article</rsrctype><creationdate>2020</creationdate><recordtype>article</recordtype><recordid>eNplkMlKA0EURQtRMMT8gKv6gdYaenorCSFqoCEbg8umhvekpCeqetN_b4suBO_mntXlchi7l-JBaxCP2KGb4zgEl0BKWWu4YhslKshAgbr-w7dsl9KnWANS11ps2NORKLiAw8xP_dRhv5KZwzjwkbjhh7hM88ibYKOJC7-kMHzwd7R8nxL2tlvu2A2ZLuHut7fs8nx8O7xmzfnldNg3mVMg58w5YZUorc_JVZSbXPuSipWlLX2pq9xXWDhl81oUHtAUQMIT6dqjgRIrvWXqZ9fFMaWI1E4x9OunVor220L734L-AvrCVGc</recordid><startdate>20201101</startdate><enddate>20201101</enddate><creator>Park, BoSun</creator><creator>Song, JinGyo</creator><creator>Seo, Seog Chung</creator><scope>AAYXX</scope><scope>CITATION</scope><orcidid>https://orcid.org/0000-0001-8016-2808</orcidid></search><sort><creationdate>20201101</creationdate><title>Efficient Implementation of a Crypto Library Using Web Assembly</title><author>Park, BoSun ; Song, JinGyo ; Seo, Seog Chung</author></sort><facets><frbrtype>5</frbrtype><frbrgroupid>cdi_FETCH-LOGICAL-c291t-cc0b206bd4fc7f4a43d6f5fc71b6d6374d7e5c2b4805d9ea59f0dff38dea96e73</frbrgroupid><rsrctype>articles</rsrctype><prefilter>articles</prefilter><language>eng</language><creationdate>2020</creationdate><toplevel>peer_reviewed</toplevel><toplevel>online_resources</toplevel><creatorcontrib>Park, BoSun</creatorcontrib><creatorcontrib>Song, JinGyo</creatorcontrib><creatorcontrib>Seo, Seog Chung</creatorcontrib><collection>CrossRef</collection><jtitle>Electronics (Basel)</jtitle></facets><delivery><delcategory>Remote Search Resource</delcategory><fulltext>fulltext</fulltext></delivery><addata><au>Park, BoSun</au><au>Song, JinGyo</au><au>Seo, Seog Chung</au><format>journal</format><genre>article</genre><ristype>JOUR</ristype><atitle>Efficient Implementation of a Crypto Library Using Web Assembly</atitle><jtitle>Electronics (Basel)</jtitle><date>2020-11-01</date><risdate>2020</risdate><volume>9</volume><issue>11</issue><spage>1839</spage><pages>1839-</pages><issn>2079-9292</issn><eissn>2079-9292</eissn><abstract>We implement a cryptographic library using Web Assembly. Web Assembly is expected to show better performance than Javascript. The proposed library provides comprehensive algorithm sets including revised CHAM, Hash Message Authentication Code (HMAC), and ECDH using the NIST P-256 curve to provide confidentiality, data authentication, and key agreement functions. To optimize the performance of revised CHAM in the proposed library, we apply an existing method that is a four-round combining method and additionally propose the precomputation method to CHAM-64/128. The proposed revised CHAM showed an approximate 2.06 times (CHAM-64/128), approximate 2.13 times (CHAM-128/128), and approximate 2.63 times (CHAM-128/256) performance improvement in Web Assembly compared to JavaScript. In addition, CHAM-64/128 applying the precomputation method showed an improved performance by approximately 1.2 times more than the existing CHAM-64/128. For the ECDH using P-256 curve, the naive implementation of ECDH is vulnerable to side-channel attacks (SCA), e.g., simple power analysis (SPA), and timing analysis (TA). Thus, we apply an SPA and TA resistant scalar multiplication method, which is a core operation in ECDH. We present atomic block-based scalar multiplication by revising the previous work. Existing atomic blocks show a performance overhead of 55%, 23%, and 37%, but atomic blocks proposed to use only P=(X,Y,Z) show 18%, 6%, and 11% performance overhead. The proposed Web Assembly-based crypto library provides enhanced performance and resistance against SCA thus, it can be used in various web-based applications.</abstract><doi>10.3390/electronics9111839</doi><orcidid>https://orcid.org/0000-0001-8016-2808</orcidid><oa>free_for_read</oa></addata></record>
fulltext fulltext
identifier ISSN: 2079-9292
ispartof Electronics (Basel), 2020-11, Vol.9 (11), p.1839
issn 2079-9292
2079-9292
language eng
recordid cdi_crossref_primary_10_3390_electronics9111839
source Publicly Available Content Database (Proquest) (PQ_SDU_P3)
title Efficient Implementation of a Crypto Library Using Web Assembly
url http://sfxeu10.hosted.exlibrisgroup.com/loughborough?ctx_ver=Z39.88-2004&ctx_enc=info:ofi/enc:UTF-8&ctx_tim=2025-01-07T20%3A17%3A43IST&url_ver=Z39.88-2004&url_ctx_fmt=infofi/fmt:kev:mtx:ctx&rfr_id=info:sid/primo.exlibrisgroup.com:primo3-Article-crossref&rft_val_fmt=info:ofi/fmt:kev:mtx:journal&rft.genre=article&rft.atitle=Efficient%20Implementation%20of%20a%20Crypto%20Library%20Using%20Web%20Assembly&rft.jtitle=Electronics%20(Basel)&rft.au=Park,%20BoSun&rft.date=2020-11-01&rft.volume=9&rft.issue=11&rft.spage=1839&rft.pages=1839-&rft.issn=2079-9292&rft.eissn=2079-9292&rft_id=info:doi/10.3390/electronics9111839&rft_dat=%3Ccrossref%3E10_3390_electronics9111839%3C/crossref%3E%3Cgrp_id%3Ecdi_FETCH-LOGICAL-c291t-cc0b206bd4fc7f4a43d6f5fc71b6d6374d7e5c2b4805d9ea59f0dff38dea96e73%3C/grp_id%3E%3Coa%3E%3C/oa%3E%3Curl%3E%3C/url%3E&rft_id=info:oai/&rft_id=info:pmid/&rfr_iscdi=true