{"id":171495,"date":"2015-08-26T15:31:59","date_gmt":"2015-08-26T15:31:59","guid":{"rendered":"https:\/\/newed.any0.dpdns.org\/en-us\/research\/project\/fourqlib\/"},"modified":"2024-09-30T18:09:32","modified_gmt":"2024-10-01T01:09:32","slug":"fourqlib","status":"publish","type":"msr-project","link":"https:\/\/newed.any0.dpdns.org\/en-us\/research\/project\/fourqlib\/","title":{"rendered":"FourQlib"},"content":{"rendered":"<div class=\"asset-content\">\n<p>FourQlib is an efficient and portable math library that provides functions for computing essential elliptic curve operations on a high-performance curve called &#8220;FourQ&#8221;. This curve targets the 128-bit security level and supports computations that are significantly faster than any other alternative; e.g., it is between four and five times faster than the NIST P-256 curve and between two and three times faster than Curve25519. Please note that while the library is available for download at the link below, this library is not actively maintained and is provided here for research purposes only.<\/p>\n<p><!-- .asset-content --><\/p>\n<\/div>\n<div id=\"en-usprojectsfourqlibdefault\" class=\"page-content\">\n<h2>The Curve:<\/h2>\n<p>FourQ is a high-security, high-performance elliptic curve that targets the 128-bit security level [1]. It is defined by the twisted Edwards equation:<\/p>\n<p align=\"center\">E(GF(<em>p<\/em><sup>2<\/sup>)): \u00a0&#8211;<em>x<\/em><sup>2<\/sup> + <em>y<\/em><sup>2<\/sup> = 1 + <em>dx<\/em><sup>2<\/sup><em>y<\/em><sup>2<\/sup>,<\/p>\n<p>where <em>p<\/em> is the Mersenne prime <em>p<\/em> = 2<sup>127 <\/sup>&#8211; 1 and <em>d<\/em> is a non-square in GF(<em>p<\/em><sup>2<\/sup>). FourQ comes equipped with two efficiently computable endomorphisms which enable four-dimensional scalar decompositions. The powerful combination of these\u00a0endomorphisms together with\u00a0the use\u00a0of complete, extended twisted Edwards coordinates and very efficient arithmetic over\u00a0<em>p<\/em> = 2<sup>127 <\/sup>&#8211; 1 facilitates\u00a0scalar multiplications that are significantly faster than any other\u00a0available alternative.<\/p>\n<h2>Library Features:<\/h2>\n<ul>\n<li>FourQlib includes support for core ECC functions\u00a0necessary to implement most popular elliptic curve-based schemes. In particular, FourQlib supports the computation of scalar multiplication\u00a0in three variants:<\/li>\n<\/ul>\n<blockquote>\n<blockquote>\n<blockquote><p>1.\u00a0 Variable-base scalar multiplication (e.g., this is used for computing the shared secret in the Diffie-Hellman key exchange)<\/p>\n<p>2.\u00a0 Fixed-base scalar multiplication (e.g., this can be used for key generation in the Diffie-Hellman key exchange)<\/p>\n<p>3.\u00a0 Double-scalar multiplication, for digital signature verification<\/p><\/blockquote>\n<\/blockquote>\n<\/blockquote>\n<ul>\n<li>Full protection against timing and cache attacks by executing crypto-sensitive operations in constant-time with no correlation between timing and secret data<\/li>\n<li>High performance without compromising security, portability and usability<\/li>\n<li>Library runs on Windows and Linux<\/li>\n<li>Includes Portable C version for x86, x64, and ARM<\/li>\n<li>Also includes high-performance, optimized versions for x64 and for ARM with NEON<\/li>\n<\/ul>\n<h2>Download:<\/h2>\n<p>The FourQ Library is no longer actively maintained, but is available for research purposes at: <a href=\"https:\/\/newed.any0.dpdns.org\/en-us\/download\/details.aspx?id=52310\">https:\/\/newed.any0.dpdns.org\/en-us\/download\/details.aspx?id=52310<\/a><\/p>\n<h2>Reference:<\/h2>\n<p>[1] Craig Costello and Patrick Longa, \u201cFourQ: four-dimensional decompositions on a Q-curve over the Mersenne prime\u201d, in Advances in Cryptology &#8211; ASIACRYPT 2015 (to appear), 2015. Extended version available at: <a class=\"msr-external-link glyph-append glyph-append-open-in-new-tab glyph-append-xsmall\" rel=\"noopener noreferrer\" target=\"_blank\" href=\"http:\/\/eprint.iacr.org\/2015\/565\">http:\/\/eprint.iacr.org\/2015\/565<span class=\"sr-only\"> (opens in new tab)<\/span><\/a><\/p>\n<p>[2] Patrick Longa, \u201cFourQNEON: faster elliptic curve scalar multiplications on ARM processors\u201d, TechReport MSR-TR-2016-25, 2016. Available at: <a class=\"msr-external-link glyph-append glyph-append-open-in-new-tab glyph-append-xsmall\" rel=\"noopener noreferrer\" target=\"_blank\" href=\"http:\/\/research.microsoft.com\/apps\/pubs\/?id=266450\">http:\/\/research.microsoft.com\/apps\/pubs\/?id=266450<span class=\"sr-only\"> (opens in new tab)<\/span><\/a><\/p>\n<\/div>\n","protected":false},"excerpt":{"rendered":"<p>FourQlib is an efficient and portable math library that provides functions for computing essential elliptic curve operations on a high-performance curve called &#8220;FourQ&#8221;. This curve targets the 128-bit security level and supports computations that are significantly faster than any other alternative; e.g., it is between four and five times faster than the NIST P-256 curve [&hellip;]<\/p>\n","protected":false},"featured_media":0,"template":"","meta":{"msr-url-field":"","msr-podcast-episode":"","msrModifiedDate":"","msrModifiedDateEnabled":false,"ep_exclude_from_search":false,"_classifai_error":"","footnotes":""},"research-area":[13558],"msr-locale":[268875],"msr-impact-theme":[],"msr-pillar":[],"class_list":["post-171495","msr-project","type-msr-project","status-publish","hentry","msr-research-area-security-privacy-cryptography","msr-locale-en_us","msr-archive-status-active"],"msr_project_start":"8\/26\/2015","related-publications":[238341,385148],"related-downloads":[],"related-videos":[],"related-groups":[],"related-events":[],"related-opportunities":[],"related-posts":[],"related-articles":[],"tab-content":[],"slides":[],"related-researchers":[{"type":"user_nicename","display_name":"Tolga Acar","user_id":34244,"people_section":"Group 1","alias":"tolga"},{"type":"user_nicename","display_name":"Patrick Longa","user_id":33271,"people_section":"Group 1","alias":"plonga"},{"type":"user_nicename","display_name":"Karen Easterbrook","user_id":32510,"people_section":"Group 1","alias":"keaster"}],"msr_research_lab":[],"msr_impact_theme":[],"_links":{"self":[{"href":"https:\/\/newed.any0.dpdns.org\/en-us\/research\/wp-json\/wp\/v2\/msr-project\/171495","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/newed.any0.dpdns.org\/en-us\/research\/wp-json\/wp\/v2\/msr-project"}],"about":[{"href":"https:\/\/newed.any0.dpdns.org\/en-us\/research\/wp-json\/wp\/v2\/types\/msr-project"}],"version-history":[{"count":4,"href":"https:\/\/newed.any0.dpdns.org\/en-us\/research\/wp-json\/wp\/v2\/msr-project\/171495\/revisions"}],"predecessor-version":[{"id":1089207,"href":"https:\/\/newed.any0.dpdns.org\/en-us\/research\/wp-json\/wp\/v2\/msr-project\/171495\/revisions\/1089207"}],"wp:attachment":[{"href":"https:\/\/newed.any0.dpdns.org\/en-us\/research\/wp-json\/wp\/v2\/media?parent=171495"}],"wp:term":[{"taxonomy":"msr-research-area","embeddable":true,"href":"https:\/\/newed.any0.dpdns.org\/en-us\/research\/wp-json\/wp\/v2\/research-area?post=171495"},{"taxonomy":"msr-locale","embeddable":true,"href":"https:\/\/newed.any0.dpdns.org\/en-us\/research\/wp-json\/wp\/v2\/msr-locale?post=171495"},{"taxonomy":"msr-impact-theme","embeddable":true,"href":"https:\/\/newed.any0.dpdns.org\/en-us\/research\/wp-json\/wp\/v2\/msr-impact-theme?post=171495"},{"taxonomy":"msr-pillar","embeddable":true,"href":"https:\/\/newed.any0.dpdns.org\/en-us\/research\/wp-json\/wp\/v2\/msr-pillar?post=171495"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}