openjournals / joss-reviews

Reviews for the Journal of Open Source Software
Creative Commons Zero v1.0 Universal
719 stars 38 forks source link

[REVIEW]: Hypercomplex: abstract & fast header-only C++ template library for lattice-based cryptosystems in high-dimensional algebras #5272

Closed editorialbot closed 1 year ago

editorialbot commented 1 year ago

Submitting author: !--author-handle-->@AngryMaciek<!--end-author-handle-- (Maciej Bak) Repository: https://github.com/AngryMaciek/hypercomplex Branch with paper.md (empty if default branch): Version: v2.0.3 Editor: !--editor-->@olexandr-konovalov<!--end-editor-- Reviewers: @vissarion, @ludopulles Archive: 10.5281/zenodo.7938823

Status

status

Status badge code:

HTML: <a href="https://joss.theoj.org/papers/0443478cee3a845536aed90edd4f3517"><img src="https://joss.theoj.org/papers/0443478cee3a845536aed90edd4f3517/status.svg"></a>
Markdown: [![status](https://joss.theoj.org/papers/0443478cee3a845536aed90edd4f3517/status.svg)](https://joss.theoj.org/papers/0443478cee3a845536aed90edd4f3517)

Reviewers and authors:

Please avoid lengthy details of difficulties in the review thread. Instead, please create a new issue in the target repository and link to those issues (especially acceptance-blockers) by leaving comments in the review thread below. (For completists: if the target issue tracker is also on GitHub, linking the review thread in the issue or vice versa will create corresponding breadcrumb trails in the link target.)

Reviewer instructions & questions

@vissarion & @ludopulles, your review will be checklist based. Each of you will have a separate checklist that you should update when carrying out your review. First of all you need to run this command in a separate comment to create the checklist:

@editorialbot generate my checklist

The reviewer guidelines are available here: https://joss.readthedocs.io/en/latest/reviewer_guidelines.html. Any questions/concerns please let @olexandr-konovalov know.

Please start on your review when you are able, and be sure to complete your review in the next six weeks, at the very latest

Checklists

📝 Checklist for @vissarion

📝 Checklist for @ludopulles

olexandr-konovalov commented 1 year ago

@editorialbot recommend-accept

editorialbot commented 1 year ago
Attempting dry run of processing paper acceptance...
editorialbot commented 1 year ago
Reference check summary (note 'MISSING' DOIs are suggestions that need verification):

OK DOIs

- 10.1007/978-3-7643-7791-5_2 is OK
- 10.1007/978-1-4419-7719-9_6 is OK
- 10.1007/978-981-33-6781-4_6 is OK
- 10.1007/BFb0054868 is OK
- 10.1109/CADS.2010.5623536 is OK

MISSING DOIs

- None

INVALID DOIs

- None
editorialbot commented 1 year ago

:wave: @openjournals/csism-eics, this paper is ready to be accepted and published.

Check final proof :point_right::page_facing_up: Download article

If the paper PDF and the deposit XML files look good in https://github.com/openjournals/joss-papers/pull/4230, then you can now move forward with accepting the submission by compiling again with the command @editorialbot accept

olexandr-konovalov commented 1 year ago

@AngryMaciek here it is - please check the final proof. As said here, changing papers after the publication is very tedioius.

AngryMaciek commented 1 year ago

Looks good... but my eyes are insensitive to this document anymore...

danielskatz commented 1 year ago

As track editor now taking over for the final processing, I'm suggesting a bunch of changes in https://github.com/AngryMaciek/hypercomplex/pull/46

Also, I don't understand "ferd36" as a an author - should this be Patrick R. Girard, the author of the overall book?

AngryMaciek commented 1 year ago

@danielskatz : yes, I think you are right, could you please include this in your branch so that I merge everything together?

danielskatz commented 1 year ago

done

AngryMaciek commented 1 year ago

Done, but give me a second please, page formatting is off, I will adjust the document once again.

AngryMaciek commented 1 year ago

@danielskatz : finished on my end!

danielskatz commented 1 year ago

@editorialbot recommend-accept

editorialbot commented 1 year ago
Attempting dry run of processing paper acceptance...
editorialbot commented 1 year ago
Reference check summary (note 'MISSING' DOIs are suggestions that need verification):

OK DOIs

- 10.1007/978-3-7643-7791-5_2 is OK
- 10.1007/978-1-4419-7719-9_6 is OK
- 10.1007/978-981-33-6781-4_6 is OK
- 10.1007/BFb0054868 is OK
- 10.1109/CADS.2010.5623536 is OK

MISSING DOIs

- None

INVALID DOIs

- None
editorialbot commented 1 year ago

:wave: @openjournals/csism-eics, this paper is ready to be accepted and published.

Check final proof :point_right::page_facing_up: Download article

If the paper PDF and the deposit XML files look good in https://github.com/openjournals/joss-papers/pull/4231, then you can now move forward with accepting the submission by compiling again with the command @editorialbot accept

danielskatz commented 1 year ago

@AngryMaciek - sorry, one more fix that shouldn't be needed, but appears to be, plus a couple of things I missed: https://github.com/AngryMaciek/hypercomplex/pull/48

AngryMaciek commented 1 year ago

@danielskatz : merged!

danielskatz commented 1 year ago

@editorialbot recommend-accept

editorialbot commented 1 year ago
Attempting dry run of processing paper acceptance...
editorialbot commented 1 year ago
Reference check summary (note 'MISSING' DOIs are suggestions that need verification):

OK DOIs

- 10.1007/978-3-7643-7791-5_2 is OK
- 10.1007/978-1-4419-7719-9_6 is OK
- 10.1007/978-981-33-6781-4_6 is OK
- 10.1007/BFb0054868 is OK
- 10.1109/CADS.2010.5623536 is OK

MISSING DOIs

- None

INVALID DOIs

- None
editorialbot commented 1 year ago

:wave: @openjournals/csism-eics, this paper is ready to be accepted and published.

Check final proof :point_right::page_facing_up: Download article

If the paper PDF and the deposit XML files look good in https://github.com/openjournals/joss-papers/pull/4232, then you can now move forward with accepting the submission by compiling again with the command @editorialbot accept

danielskatz commented 1 year ago

@editorialbot accept

editorialbot commented 1 year ago
Doing it live! Attempting automated processing of paper acceptance...
editorialbot commented 1 year ago

Ensure proper citation by uploading a plain text CITATION.cff file to the default branch of your repository.

If using GitHub, a Cite this repository menu will appear in the About section, containing both APA and BibTeX formats. When exported to Zotero using a browser plugin, Zotero will automatically create an entry using the information contained in the .cff file.

You can copy the contents for your CITATION.cff file here:

CITATION.cff

``` cff-version: "1.2.0" authors: - family-names: Bak given-names: Maciek orcid: "https://orcid.org/0000-0003-1361-7301" doi: 10.5281/zenodo.7938823 message: If you use this software, please cite our article in the Journal of Open Source Software. preferred-citation: authors: - family-names: Bak given-names: Maciek orcid: "https://orcid.org/0000-0003-1361-7301" date-published: 2023-05-15 doi: 10.21105/joss.05272 issn: 2475-9066 issue: 85 journal: Journal of Open Source Software publisher: name: Open Journals start: 5272 title: "Hypercomplex: abstract & fast header-only C++ template library for lattice-based cryptosystems in high-dimensional algebras" type: article url: "https://joss.theoj.org/papers/10.21105/joss.05272" volume: 8 title: "Hypercomplex: abstract & fast header-only C++ template library for lattice-based cryptosystems in high-dimensional algebras" ```

If the repository is not hosted on GitHub, a .cff file can still be uploaded to set your preferred citation. Users will be able to manually copy and paste the citation.

Find more information on .cff files here and here.

editorialbot commented 1 year ago

🐦🐦🐦 👉 Tweet for this paper 👈 🐦🐦🐦

editorialbot commented 1 year ago

🐘🐘🐘 👉 Toot for this paper 👈 🐘🐘🐘

editorialbot commented 1 year ago

🚨🚨🚨 THIS IS NOT A DRILL, YOU HAVE JUST ACCEPTED A PAPER INTO JOSS! 🚨🚨🚨

Here's what you must now do:

  1. Check final PDF and Crossref metadata that was deposited :point_right: https://github.com/openjournals/joss-papers/pull/4233
  2. Wait a couple of minutes, then verify that the paper DOI resolves https://doi.org/10.21105/joss.05272
  3. If everything looks good, then close this review issue.
  4. Party like you just published a paper! 🎉🌈🦄💃👻🤘

Any issues? Notify your editorial technical team...

danielskatz commented 1 year ago

Congratulations to @AngryMaciek (Maciej Bak)!!

And thanks to @vissarion, @ludopulles for reviewing, and to @olexandr-konovalov for editing (for the first time)! We couldn't do this without your voluntary efforts

editorialbot commented 1 year ago

:tada::tada::tada: Congratulations on your paper acceptance! :tada::tada::tada:

If you would like to include a link to your paper from your README use the following code snippets:

Markdown:
[![DOI](https://joss.theoj.org/papers/10.21105/joss.05272/status.svg)](https://doi.org/10.21105/joss.05272)

HTML:
<a style="border-width:0" href="https://doi.org/10.21105/joss.05272">
  <img src="https://joss.theoj.org/papers/10.21105/joss.05272/status.svg" alt="DOI badge" >
</a>

reStructuredText:
.. image:: https://joss.theoj.org/papers/10.21105/joss.05272/status.svg
   :target: https://doi.org/10.21105/joss.05272

This is how it will look in your documentation:

DOI

We need your help!

The Journal of Open Source Software is a community-run journal and relies upon volunteer effort. If you'd like to support us please consider doing either one (or both) of the the following:

AngryMaciek commented 1 year ago

Thank you @danielskatz @olexandr-konovalov @vissarion @ludopulles for your time and effort to improve this work!

I am unimaginably happy to finalise this. What started as late-evening pet project years ago now evolved into original research in cryptography with state-of-the-art software engineering mechanisms. The scope grew waaaay beyond what I initially planed but now, as I pushed through all obstacles, I am really proud of it; I think it's the most challenging piece of math I've ever done on my own :)

All the best to everyone!

AngryMaciek commented 1 year ago

Dear @olexandr-konovalov and @danielskatz,

I have presented this work to my colleagues and they have unfortunately pointed out numerous embarrassing typos in mathematical notations which we have all missed here:

  1. Multiplicative group of integers modulo $p$ and $q$ should be: $Z/pZ$ and $Z/qZ$
  2. Lower suffix in polynomial of $x$ should be an upper suffix as a power operation: $x^i$
  3. Multiplication definition in its current form denotes only a coefficient for $x^k$, that is $[f \star g]_k$; full multiplication formula requires a summation over all $k$ values and a $x^k$ term

I have denoted the corrections below:

Screenshot 2023-05-22 at 11 18 43

I understand this is a problem and I apologise for the situation but could we please adjust the publication as mentioned in the previous post (pointing to the JOSS guidelines)?

@AngryMaciek here it is - please check the final proof. As said here, changing papers after the publication is very tedioius.

Kind Regards,

danielskatz commented 1 year ago

@AngryMaciek - please update the .md file, and let me know when it is fixed.

AngryMaciek commented 1 year ago

@danielskatz - I have corrected the typos and clarified formula (2): current indices reflect formula (1) better so that they are visually closer; current master branch contains a fixed version of paper.md and that is the only file that was changed in the PR (https://github.com/AngryMaciek/hypercomplex/pull/54)

danielskatz commented 1 year ago

@editorialbot reaccept

editorialbot commented 1 year ago
Rebuilding paper!
editorialbot commented 1 year ago

🌈 Paper updated!

New PDF and metadata files :point_right: https://github.com/openjournals/joss-papers/pull/4251

danielskatz commented 1 year ago

@AngryMaciek - this should be fixed, though it might take a little bit to update everywhere

AngryMaciek commented 1 year ago

@danielskatz - Thank you very much for your help; I think it's all good now.