-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathmarksheet.txt
83 lines (58 loc) · 3.25 KB
/
marksheet.txt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
-------------------------------------------------------------------------------
1. Instructions
- replace any [...] with free text,
and
- replace the [?] with an X if you have completed that stage,
- replace the [?] with an * if you have attempted that stage, but you know
it doesn't work completely; document why you think it doesn't work, plus
what you would do to fix the problem, at the end of the marksheet.
-------------------------------------------------------------------------------
2. Information
So that we can calibrate and improve the assignment in the future, give us
a rough idea how long (in hours) you spent on it *in total*:
effort : [50] hours
-------------------------------------------------------------------------------
3. Citation
Clearly it might have an influence on your mark, but the use of third-party
resources *is* allowed *if* correctly cited (unless explicitly prohibited
by the assignment description of course). Let us know what third-party
source code or resources you used (if any) so it's clear what's your work
and what isn't:
[
* Parts of code available at 'wiki.openssl.org/index.php/Random_Numbers'
of OpenSSL (1.0.1) implementation which allows to use Intel Secure technology
were used.
* Libraries that facilitate use of Intel Secure technology.
]
-------------------------------------------------------------------------------
4. Marking
The following gives a stage-by-stage description of the assignment marking
scheme. Note this acts as an indicative guideline only, including weights
for each more obvious element (e.g., the functional correctness of a stage).
For example, other elements outside this list *often* warrant an increase
or decrease in marks; examples include hard to quantify features such as
the style or efficiency of a solution.
[X] Stage 1 : implemented RSA encryption ( 10%)
[X] Stage 2 : implemented RSA decryption ( 10%)
[X] Stage 3 : implemented ElGamal encryption ( 10%)
[X] Stage 4 : implemented ElGamal decryption ( 10%)
Extra : implemented (and integrated) major optimisations
[X] - Chinese Remainder Theorem (CRT) ( 10%)
[X] - Non-binary (i.e., "windowed") exponentiation ( 20%)
[X] - Montgomery multiplication ( 30%)
------
(100%)
-------------------------------------------------------------------------------
5. Documentation
Any other documentation, notes or comments that you think are important or
might be easy to overlook (e.g., a subtle issue or technique in associated
source code) should go here:
[
* Avoid to compute inverse in Stage 4 by simple mathematical workaround.
* Non standard implementation of random number generator for Stage 3. Seed from
Intel's RDRAND and random values from SSL cryptographically secure random
number generator.
* In non-Montgomery-multiplication version of sliding window Montgomery's
Ladder is used to defend against side-channel attacks.
]
-------------------------------------------------------------------------------