Random

Download as pdf or txt
Download as pdf or txt
You are on page 1of 9

Verification report: ITL15306

NetEnt Product Services Ltd

Random Number Generator


Certification Report
01 April 2015

iTech Labs Australia ACN 108 249 761


Suite 24, 40 Montclair Ave, Glen Waverley, VIC 3150, Australia. Tel. +61 3 9561 9955 www.itechlabs.com.au
iTech Labs is an ISO/IEC 17025 NATA accredited testing laboratory
Verification report: ITL15306
I. General information
No. Description Details
1. Identification NetEnt RNG
2. Verification body issuing the iTech Labs Australia
certificate (test house) Suite 24, 40 Montclair Ave
Glen Waverley, VIC 3150, Australia
URL: http://www.itechlabs.com.au
E-mail: [email protected]
3. Guidelines used for testing Malta Remote Gaming Regulations S.L.438.04
4. Details of the module tested NetEnt RNG
5. Type of the module tested Random Number Generator (RNG)
6. Produced by NetEnt Product Services Ltd
The Marina Business Centre
Abate Rigord Street
Ta´Xbiex XBX 1120
Malta
URL: www.netent.com
7. Licensee details Not applicable
8. Date of request for verification 31 March 2015
9. Date of completion 01 April 2015
10. Results Passed all tests
11. Other records This is a recertification of the NetEnt RNG.
There are no changes to the functionality of the NetEnt RNG;
however, the old common-service.jar is replaced with spp-rng-
wrapper-1.0.0.jar.
This is due to the following non-functional changes:
 Order of the import commands in the header of
RandomGeneratorImpl.java
 Dependency type in SPP has changed

II. Details of hardware


No. Description Details
1. Produced by Not applicable
2. Identification of hardware Not applicable
3. Features that characterize the Not applicable
hardware
4. Reference to verification Not applicable
5. Other records Not applicable

III. Details of software components


No. Description Details
1. Produced by NetEnt Product Services Ltd
The Marina Business Centre
Abate Rigord Street
NetEnt Random Number Generator Page 2 of 9
Certification Report
Verification report: ITL15306
Ta´Xbiex XBX 1120
Malta
URL: www.netent.com
2. Details of the software random.fortuna.entropy.source.DevUrandomEntropySource.java
components* random.fortuna.entropy.source.DiskWriteEntropySource.java
random.fortuna.entropy.EntropyAccumulator.java
random.fortuna.entropy.EntropyBytes.java
random.fortuna.entropy.EntropyCollector.java
random.fortuna.entropy.EntropyPool.java
random.fortuna.entropy.source.EntropySource.java
random.fortuna.FortunaGenerator.java
random.fortuna.FortunaRandom.java
random.fortuna.entropy.source.GarbageCollectionTimeEntropySource.java
random.fortuna.entropy.source.HeapMemoryEntropySource.java
random.fortuna.entropy.source.LoadAverageEntropySource.java
random.fortuna.entropy.source.ObjectsPendingFinalizationEntropySource.java
common.commonservice.service.random.RandomGeneratorImpl.java
random.fortuna.seed.SecureRandomSeedGenerator.java
random.fortuna.seed.SeedGeneratorFactory.java
random.fortuna.seed.SeedGenerator.java
random.fortuna.entropy.source.ThreadCpuTimeEntropySource.java
random.fortuna.entropy.source.ThreadSchedulerEntropySource.java
random.fortuna.seed.UnixSeedGenerator.java
random.fortuna.entropy.source.UptimeEntropySource.java
random.fortuna.entropy.source.UsedJvmMemoryEntropySource.java
3. Features that characterise the See at the end of this table 1
software object
4. Dimensioning of the See at the end of this table 2
component
5. Reference to verification Malta Remote Gaming Regulations S.L.438.04
6. Other records This is a recertification of the NetEnt RNG.
There are no changes to the functionality of the NetEnt RNG;
however, the old common-service.jar is replaced with spp-rng-
wrapper-1.0.0.jar.
This is due to the following non-functional changes:
 Order of the import commands in the header of
RandomGeneratorImpl.java
 Dependency type in SPP has changed
*Refer to Appendix A for the size and Md5sum of each critical source file.
1
Features that characterise the software object
No. Item Name Item Type Description
1. NetEnt RNG Random NetEnt RNG is the software architecture that generates
Number Random Numbers used by the games for generating game
Generator outcomes. The RNG implementation uses Fortuna algorithm.
Details of changes in this release of the RNG:
The old common-service.jar is replaced with spp-rng-
wrapper-1.0.0.jar.

NetEnt Random Number Generator Page 3 of 9


Certification Report
Verification report: ITL15306
This is due to the following non-functional changes:
 Order of the import commands in the header of
RandomGeneratorImpl.java
 Dependency type in SPP has changed
Functionality of the RNG remains unchanged.

2
Dimensioning of the component
File Name File size (in bytes)
spp-rng-wrapper-1.0.0.jar 4,988
fortuna-1.0.jar 24,633

IV. Details of tests


Product identification: NetEnt RNG
iTech Labs has conducted evaluation of the RNG by comparing the new source code of the RNG to the
previously approved RNG to identify any changes. There were no changes to the functionality of the NetEnt
RNG. Changes were related to:
 Order of the import commands in the header of RandomGeneratorImpl.java
 Dependency type in SPP has changed
The tests below were done as part of the original certification. They were not required to be run in this re-
certification. They are included for information purposes.
No. Tests Details of Tests Results
Performed
1. Source code The following source code evaluation was The RNG implementation uses Fortuna – an
examination conducted: algorithm based on continuous reseeding
a) Identification of algorithm; from multiple entropy sources (this has
b) Security of internal state, seeding and been assessed and found acceptable).
re-seeding, thread safety; The Security of internal state, seeding, re-
c) Scaling of numbers for slot games, seeding and thread safety of PRNG is OK.
Roulette and scratch tickets. The PRNG state is initialised from Entropy
Sources.
2. Tests a) Marsaglia’s “Diehard” tests were a) Marsaglia’s “Diehard” tests.
conducted applied to 2 sets of 80 million bits of Marsaglia’s “Diehard” tests passed
raw 32 bit random numbers generated satisfactorily.
by the algorithm. The following diehard b) Chi-squared tests.
tests were conducted on 80 million bits i) Chisquare tests passed
for each test; satisfactorily
i) BIRTHDAY SPACINGS Range:0-1 DOF:1
ii) OVERLAPPING 5-PERMUTATIONS Range:0-6 DOF:5
iii) BINARY RANK TEST for 31x31 Range: 0 -31 DOF: 31
matrices Range: 0 -32 DOF: 32
iv) BINARY RANK TEST for 32x32
Range: 0 - 36 DOF: 36
matrices
Range: 0 - 62 DOF: 62
v) BINARY RANK TEST for 6x8
matrices Range: 0 - 63 DOF: 63
vi) BITSTREAM TESTS ON 20-BIT Range: 0 - 64 DOF: 64
Words Range: 0 - 999 DOF: 999
vii) BITSTREAM TESTS OPSO, OQSO, Range: 0 -9999 DOF: 9999
DNA ii) Chisquare tests passed
viii) COUNT-THE-1's IN A STREAM OF satisfactorily
BYTES
Range: 0 - 1,000,000; DOF: 198, 316,
ix) COUNT-THE-1's IN SPECIFIC 442, 508 and 999
BYTES
Range: 0 - 2,000,000; DOF: 198, 316,
x) PARKING LOT TEST
442, 508 and 999
xi) MINIMUM DISTANCE TEST
c) Shuffle tests passed satisfactorily

NetEnt Random Number Generator Page 4 of 9


Certification Report
Verification report: ITL15306
xii) THE 3DSPHERES TEST Each of these tests was conducted for
xiii) THE SQEEZE test a total of over 1 million decks for sets
xiv) OVERLAPPING SUMS TEST ranging from 1,000 to 100,000 decks.
xv) RUNS TEST 1 deck 1 Joker
xvi) CRAPS TEST Tests DOF
b) The following Chi-squared tests were Suits 212
conducted on the scaled numbers. Ranks 689
i) Scaling tests for slot games and Cards 2756
Roulette games.
1 deck no joker
The tests were conducted for ranges 1,
Tests DOF
6, 31, 32, 36, 62, 63, 64,
999 and 9999. Suits 156
ii) Scaling tests for scratch tickets Ranks 624
The tests were conducted for ranges Cards 2652
0-1,000,000 and 0- 4 decks no joker
2,000,000 Tests DOF
c) Shuffling for single deck card games Suits 312
(without joker and one joker),
Ranks 1248
4 decks, 6 decks and 8 decks
without joker. Cards 5304
6 decks no joker
Tests DOF
Suits 312
Ranks 1248
Cards 5304
8 decks no joker
Tests DOF
Suits 312
Ranks 1248
Cards 5304

V. Complete requirements met by the tests


iTech Labs has evaluated the NetEnt RNG as per the relevant Malta Remote Gaming Regulations S.L.438.04.
Evaluation details are given below:
Requirements Results
Third Schedule – Regulation 25
Technical Requirement for Gaming System
Third Schedule – 1
Third Schedule – 1a Not applicable
Third Schedule – 1b Not applicable
Third Schedule – 2 Not applicable
Third Schedule – 3
Third Schedule – 3a Complies
Third Schedule – 3b Complies
Third Schedule – 3c Complies
Third Schedule – 4 Not applicable
Third Schedule – 5 Not applicable
Third Schedule – 6
Third Schedule – 6a Not applicable

NetEnt Random Number Generator Page 5 of 9


Certification Report
Verification report: ITL15306
Third Schedule – 6b Not applicable
Third Schedule – 6c Not applicable
Third Schedule – 6d Not applicable
Third Schedule – 6e Not applicable
Third Schedule – 6f Not applicable
Third Schedule – 7 Not applicable
Third Schedule – 8
Third Schedule – 8a Not applicable
Third Schedule – 8b Not applicable
Third Schedule – 9
Third Schedule – 9a Not applicable
Third Schedule – 9b Not applicable
Third Schedule – 9c Not applicable
Third Schedule – 9d Not applicable
Third Schedule – 9e Not applicable
Third Schedule – 9f Not applicable
Third Schedule – 9g Not applicable
Third Schedule – 9h Not applicable
Third Schedule – 9i Not applicable
Third Schedule – 10
Third Schedule – 10a Not applicable
Third Schedule – 10b Not applicable
Third Schedule – 10c Not applicable

VI. Observations
None

VII. Conditions
None

VIII. Final declaration and conformity


No. Description Details
1. Certification Date of certification: 01 April 2015
Software provider: NetEnt Product Services Ltd
Licensee name: N/A
Licensee site URLs: N/A
Total number of pages: 9
This is to certify that iTech Labs has evaluated the Random Number
Generator (RNG) used by NetEnt Product Services Ltd and found that
the RNG complies with the relevant standards and is in conformity to
the Remote Gaming Regulations 2004 and the Lotteries and Other
Games Act applicable in Malta.

NetEnt Random Number Generator Page 6 of 9


Certification Report
Verification report: ITL15306
It is hereby certified that the RNG used by the game types listed in
Appendix B are compliant with the technical requirements set in the
Third Schedule of the Malta Remote Gaming Regulations 2004 and that
the RNG was tested as an integral part of the gaming system.

Signatures:

__________________________ __________________________
Gyulserian Hyussein Kiren Sreekumar
Senior Consultant Principal Consultant
iTech Labs Australia iTech Labs Australia
01 April 2015 01 April 2015

IX. Conclusion
While it is not possible to test all possible scenarios in a laboratory environment, iTech Labs has conducted a
level of testing appropriate for a submission of this type.
Accordingly, subject to the above comments, iTech Labs certifies that the items under test comply with the
relevant Technical Standards, unless otherwise stated.

NetEnt Random Number Generator Page 7 of 9


Certification Report
Verification report: ITL15306
Appendix A

No File Name Size (in Md5sum*


bytes)
1. random.fortuna.entropy.source.DevUrandomEntropySource.java 1,221 21D8A5F72A14DD2B514BA08172B5F936
2. random.fortuna.entropy.source.DiskWriteEntropySource.java 1,674 D56E0181C4C9E7F5AD6B490A0FB3A146
3. random.fortuna.entropy.EntropyAccumulator.java 3,929 5D1D26CE5E79521D7F905E3B445003DC
4. random.fortuna.entropy.EntropyBytes.java 1,322 D81D563523660FA7E8D5E052C8361B65
5. random.fortuna.entropy.EntropyCollector.java 950 E7D31EA7B677424C8F84F1DF6371694D
6. random.fortuna.entropy.EntropyPool.java 2,983 3BA6100409AC2CB2A425D21021717C98
7. random.fortuna.entropy.source.EntropySource.java 214 D5FD6ED6274FA207D4BB54C702D3EE8D
8. random.fortuna.FortunaGenerator.java 3,427 87DD948316AA7006EC89F62AB7FDF92F
9. random.fortuna.FortunaRandom.java 5,387 C3F706EEEF948B4631441E4FC0B3957B
10. random.fortuna.entropy.source.GarbageCollectionTimeEntropySource.java 741 00E5BC07289BF5A1AE2B36A53604E557
11. random.fortuna.entropy.source.HeapMemoryEntropySource.java 671 70A908470B2F715107CC5812759606E6
12. random.fortuna.entropy.source.LoadAverageEntropySource.java 778 C90409BB799E1C134414D99AB4D690A4
13. random.fortuna.entropy.source.ObjectsPendingFinalizationEntropySource.j 694
ava 0E6478E94ADCC4D7BFB3AA85FD4F8156
14. common.commonservice.service.random.RandomGeneratorImpl.java 1,345 91C3A9952D36622FFB052BED8BFB7130
15. random.fortuna.seed.SecureRandomSeedGenerator.java 591 CCCD173A5DE409C928E308CDB6CE01AA
16. random.fortuna.seed.SeedGeneratorFactory.java 298 A5DAB6B442D1EEC499079D36FAE2E405
17. random.fortuna.seed.SeedGenerator.java 120 941D2DCF0490F688D10CB6198BD3A398
18. random.fortuna.entropy.source.ThreadCpuTimeEntropySource.java 756 DDA7D8A879169F9D4B130EA10AF9898E
19. random.fortuna.entropy.source.ThreadSchedulerEntropySource.java 892 F46297F8CAAD8EEBE25E75ECECB4FE1E
20. random.fortuna.seed.UnixSeedGenerator.java 635 0CB69D20880F4EED9D6C3E59DE4B5402
21. random.fortuna.entropy.source.UptimeEntropySource.java 859 0614B2D9106BC865461450EA4060E5E2
22. random.fortuna.entropy.source.UsedJvmMemoryEntropySource.java 717 FD66967A3E039A6197086BD6C2DC8F0A
*Md5sum is calculated using the Linux program md5sum.

NetEnt Random Number Generator Page 8 of 9


Certification Report
Verification report: ITL15306
Appendix B
No. Game types
1. Slot games
2. Roulette games (single zero adn double zero)
3. Scratch Ticket Games
4. Card Games - single deck card games (without joker and one joker), 4 decks, 6 decks and 8 decks
without joker

NetEnt Random Number Generator Page 9 of 9


Certification Report

You might also like