Computer Science bachelor degree thesis on Libgcrypt

classic Classic list List threaded Threaded
6 messages Options
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Computer Science bachelor degree thesis on Libgcrypt

Marcio Barbado, Jr.
Hi,
I'm a computer science student from Brazil, and a long time user of
GnuPG.

In 2017 -- last year for completion of my bachelor degree, my group is
supposed to start working on a thesis, which should include algorithmic
code development.

After some months considering what we could do, "trying to help the
GnuPG community" emerged as a worthy idea, so we're now reading the "The
Ligbgcrypt Reference Manual" document in order to understand it better.

Also, we're questioning how feasible that idea is for us to accomplish.
And from such considerations, we first thought of analyzing eventual
Libgcrypt bug tracking entries, or something like that.

But even before that, we would like to know what you Libgcrypt people
think of all this.


Regards, and happy birthday, GnuPG!



Marcio Barbado, Jr.


_______________________________________________
Gcrypt-devel mailing list
[hidden email]
http://lists.gnupg.org/mailman/listinfo/gcrypt-devel
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Computer Science bachelor degree thesis on Libgcrypt

Marcio Barbado, Jr.
Hey.

While we're a tad confused with your silence, our excitement in
studying GnuPG remains unscathed (e.g: we've been trying to identify and
understand the main differences between OpenPGP and X.509). This feels
like approaching a kung fu master in the very top of a mountain when
he's meditating. He listens to the eager novices' claims but doesn't
even open his eyes.

Well, we've been browsing GnuPG's bug tracker, searching for minor bugs
and features, but except for Issue2056, which involves an OS we're not
really able to work with, we could not find Libgcrypt stuff.

Other than the mentioned ticket, performing simple queries with
"gcrypt" and "libgcrypt" (they don't return equivalent results) has
provided us with resolved issues only.

Also, we did read the TODO file of Libgcrypt, where we found apparently
interesting stuff to deal with. But they're not detailed like the
Roundup items so we're kinda lost.

Surely we know our work may not be useful for you after all (though we
dream of the opposite) but some basic guidance would be fairly
appreciated. For example, should we post on another mailing list or is
this the proper one for algorithmic code development?


Regards,



Em 20.12.2016 12:57, Marcio Barbado, Jr. escreveu:

> Hi,
> I'm a computer science student from Brazil, and a long time user of
> GnuPG.
> In 2017 -- last year for completion of my bachelor degree, my group
> is supposed to start working on a thesis, which should include
> algorithmic code development.
> After some months considering what we could do, "trying to help the
> GnuPG community" emerged as a worthy idea, so we're now reading the
> "The Ligbgcrypt Reference Manual" document in order to understand it
> better.
> Also, we're questioning how feasible that idea is for us to
> accomplish. And from such considerations, we first thought of
> analyzing eventual Libgcrypt bug tracking entries, or something like
> that.
> But even before that, we would like to know what you Libgcrypt people
> think of all this.
> Regards, and happy birthday, GnuPG!
>
> Marcio Barbado, Jr.
> _______________________________________________
> Gcrypt-devel mailing list
> [hidden email]
> http://lists.gnupg.org/mailman/listinfo/gcrypt-devel


Marcio Barbado, Jr.


_______________________________________________
Gcrypt-devel mailing list
[hidden email]
http://lists.gnupg.org/mailman/listinfo/gcrypt-devel
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Computer Science bachelor degree thesis on Libgcrypt

NIIBE Yutaka
Hello, Marcio,

Well, I learned QiGong from the Chinese master when I was a student in
Tokyo.  :-)  No, I am not a master (QiGong or libgcrypt).  But, I do some
development of libgcrypt, and maintain some code.

"Marcio Barbado, Jr." <[hidden email]> writes:
> For example, should we post on another mailing list or is this the
> proper one for algorithmic code development?

Yes, here is the place for technical discussion.  I don't know about
"algorithmic code development" you addressed, though.

You can find what's going on in the development by reading our archives.

    The Gcrypt-devel Archives:
    https://lists.gnupg.org/pipermail/gcrypt-devel/

Our source code repository is here:

    The GNU crypto library:
    https://git.gnupg.org/cgi-bin/gitweb.cgi?p=libgcrypt.git

Please get the source code by git.  The command line invocation is:

    $ git clone git://git.gnupg.org/libgcrypt.git

And then, you can examine the history of our development.
--

_______________________________________________
Gcrypt-devel mailing list
[hidden email]
http://lists.gnupg.org/mailman/listinfo/gcrypt-devel
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Computer Science bachelor degree thesis on Libgcrypt

Marcio Barbado, Jr.
Hi, NIIBE. Thank you for replying back.

Sorry for wrong technical terminology. At least my kung fu feeling was
quite close.

We'll be taking a look in all that.


Regards,



Em 08.02.2017 06:43, NIIBE Yutaka escreveu:

> Hello, Marcio,
>
> Well, I learned QiGong from the Chinese master when I was a student in
> Tokyo.  :-)  No, I am not a master (QiGong or libgcrypt).  But, I do
> some
> development of libgcrypt, and maintain some code.
>
> "Marcio Barbado, Jr." <[hidden email]> writes:
>> For example, should we post on another mailing list or is this the
>> proper one for algorithmic code development?
>
> Yes, here is the place for technical discussion.  I don't know about
> "algorithmic code development" you addressed, though.
>
> You can find what's going on in the development by reading our
> archives.
>
>     The Gcrypt-devel Archives:
>     https://lists.gnupg.org/pipermail/gcrypt-devel/
>
> Our source code repository is here:
>
>     The GNU crypto library:
>     https://git.gnupg.org/cgi-bin/gitweb.cgi?p=libgcrypt.git
>
> Please get the source code by git.  The command line invocation is:
>
>     $ git clone git://git.gnupg.org/libgcrypt.git
>
> And then, you can examine the history of our development.
> --


Marcio Barbado, Jr.


_______________________________________________
Gcrypt-devel mailing list
[hidden email]
http://lists.gnupg.org/mailman/listinfo/gcrypt-devel
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Computer Science bachelor degree thesis on Libgcrypt

Marcio Barbado, Jr.
Hi NIIBE and list.

As suggested, I've searched through and read some messages from the
lists' archives (mostly gnupg-users and gcrypt-devel to be honest).

Also I've searched GnuPG's blog, bug tracker, libgcrypt's repository
itself, and the Internet as well, including academic content. There is
GPG-related stuff all over the Internet, as one might expect.

Mostly, I used search keywords like "benchmark", "bug", "comparison",
"feature", "metrics", "patch", "problem", "request" and "unsolved". Each
one combined somehow with libgcrypt.

Results obviously led me to more and more content, which I tried to
filter and figure, given my academic deadlines constraints.

A few conclusions, ideas and remarks arose:

* bugs were discarded for the group believes there's no such knowledge
among us nor backstage intimacy to deal with that;

* features were also discarded because it could put us away from the
OpenPGP standard, and we want to stick with it;

* probably, our best chance lies on libgcrypt's TODO file (from
libgcrypt's repository), which lists interesting items, some don't seem
like critical stuff. Plus the referred file says community need testing;

* [INTERLUDE] meanwhile, our teacher (who reads us) has suggested us to
consider a study on algorithms' metrics (comparisons and things like
that); As mentioned, community do need tests, and the "tests" directory
looks interesting in this sense; and

* well, given all of the recent buzz around SHA-1 collision, we're
considering tests among the substitution candidates (eg: BLAKE2, SHA-256
and SHA-3).


So, concerning those tests, we have some questions like: are there any
architectures and/or contexts on which new benchmarks could be helpful
at this moment?


Regards,



Em 08.02.2017 14:12, Marcio Barbado, Jr. escreveu:

> Hi, NIIBE. Thank you for replying back.
> Sorry for wrong technical terminology. At least my kung fu feeling
> was quite close.
> We'll be taking a look in all that.
> Regards,
> Em 08.02.2017 06:43, NIIBE Yutaka escreveu:
>> Hello, Marcio,
>> Well, I learned QiGong from the Chinese master when I was a student
>> in
>> Tokyo.  :-)  No, I am not a master (QiGong or libgcrypt).  But, I do
>> some
>> development of libgcrypt, and maintain some code.
>> "Marcio Barbado, Jr." <[hidden email]> writes:
>>> For example, should we post on another mailing list or is this the
>>> proper one for algorithmic code development?
>> Yes, here is the place for technical discussion.  I don't know about
>> "algorithmic code development" you addressed, though.
>> You can find what's going on in the development by reading our
>> archives.
>> The Gcrypt-devel Archives:
>>     https://lists.gnupg.org/pipermail/gcrypt-devel/
>> Our source code repository is here:
>> The GNU crypto library:
>>     https://git.gnupg.org/cgi-bin/gitweb.cgi?p=libgcrypt.git
>> Please get the source code by git.  The command line invocation is:
>> $ git clone git://git.gnupg.org/libgcrypt.git
>> And then, you can examine the history of our development.
>> --
> Marcio Barbado, Jr.


Marcio Barbado, Jr.


_______________________________________________
Gcrypt-devel mailing list
[hidden email]
http://lists.gnupg.org/mailman/listinfo/gcrypt-devel
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Computer Science bachelor degree thesis on Libgcrypt

NIIBE Yutaka
Hello,

If you have a machine, you can build libgcrypt and do "make check" to
run those tests.  Attached is an example output of "make check".  You
can have a look and see what kinds of tests are there.

"Marcio Barbado, Jr." <[hidden email]> wrote:
> * well, given all of the recent buzz around SHA-1 collision, we're
> considering tests among the substitution candidates (eg: BLAKE2, SHA-256
> and SHA-3).
>
>
> So, concerning those tests, we have some questions like: are there any
> architectures and/or contexts on which new benchmarks could be helpful
> at this moment?

For hash functions, we have libgcrypt/tests/hashtest.c and md_bench
function in libgcrypt/tests/benchmark.c.  Please have a look.

We have those tests, basically to detect regression (for correctness and
for performance), during our development [0].  Usually, we add tests
based on existing test vectors for each algorithm [1].  We add tests
based on bug reports, and write benchmark to measure performance.

Well, what do you intend for your new benchmarks?

Please note that this is the development mailing list, the major purpose
is not for education.  While we welcome questions about libgcrypt
implementation and contribution to the development and you can learn by
joining discussion, we can't answer question like what kind of study
could be done by you.  We don't know that.  I think you should ask your
teacher.

[0] https://en.wikipedia.org/wiki/Regression_testing
[1] https://en.wikipedia.org/wiki/Test_vector

Hope this helps,
--

_______________________________________________
Gcrypt-devel mailing list
[hidden email]
http://lists.gnupg.org/mailman/listinfo/gcrypt-devel

example-output-make-check.txt (38K) Download Attachment
Loading...