Skip to main content

TinyMT32 Pseudorandom Number Generator (PRNG)
RFC 8682

Revision differences

Document history

Date Rev. By Action
2020-01-14
06 (System)
Received changes through RFC Editor sync (created alias RFC 8682, changed title to 'TinyMT32 Pseudorandom Number Generator (PRNG)', changed abstract to 'This document describes …
Received changes through RFC Editor sync (created alias RFC 8682, changed title to 'TinyMT32 Pseudorandom Number Generator (PRNG)', changed abstract to 'This document describes the TinyMT32 Pseudorandom Number Generator (PRNG), which produces 32-bit pseudorandom unsigned integers and aims at having a simple-to-use and deterministic solution.  This PRNG is a small-sized variant of the Mersenne Twister (MT) PRNG.  The main advantage of TinyMT32 over MT is the use of a small internal state, compatible with most target platforms that include embedded devices, while keeping reasonably good randomness that represents a significant improvement compared to the Park-Miller Linear Congruential PRNG.  However, neither the TinyMT nor MT PRNG is meant to be used for cryptographic applications.', changed standardization level to Proposed Standard, changed state to RFC, added RFC published event at 2020-01-14, changed IESG state to RFC Published)
2020-01-14
06 (System) RFC published
2020-01-14
06 (System) RFC Editor state changed to AUTH48-DONE from TI
2020-01-07
06 (System) RFC Editor state changed to TI
2019-12-18
06 (System) RFC Editor state changed to TI from AUTH48-DONE
2019-12-05
06 (System) RFC Editor state changed to AUTH48-DONE from AUTH48
2019-11-04
06 (System) RFC Editor state changed to AUTH48 from RFC-EDITOR
2019-09-20
06 (System) RFC Editor state changed to RFC-EDITOR from EDIT
2019-08-26
06 Gunter Van de Velde Assignment of request for Last Call review by OPSDIR to Jon Mitchell was marked no-response
2019-06-22
06 Tero Kivinen Assignment of request for Telechat review by SECDIR to Carl Wallace was marked no-response
2019-06-19
06 (System) IANA Action state changed to No IANA Actions from In Progress
2019-06-18
06 (System) RFC Editor state changed to EDIT
2019-06-18
06 (System) IESG state changed to RFC Ed Queue from Approved-announcement sent
2019-06-18
06 (System) Announcement was received by RFC Editor
2019-06-18
06 (System) IANA Action state changed to In Progress
2019-06-18
06 Amy Vezza IESG state changed to Approved-announcement sent from Approved-announcement to be sent
2019-06-18
06 Amy Vezza IESG has approved the document
2019-06-18
06 Amy Vezza Closed "Approve" ballot
2019-06-18
06 Amy Vezza Ballot approval text was generated
2019-06-18
06 Magnus Westerlund IESG state changed to Approved-announcement to be sent from IESG Evaluation::AD Followup
2019-06-17
06 Adam Roach [Ballot comment]
Thanks for addressing my discuss point.
2019-06-17
06 Adam Roach [Ballot Position Update] Position for Adam Roach has been changed to No Objection from Discuss
2019-06-17
06 Vincent Roca New version available: draft-ietf-tsvwg-tinymt32-06.txt
2019-06-17
06 (System) New version approved
2019-06-17
06 (System) Request for posting confirmation emailed to previous authors: Makoto Matsumoto , Vincent Roca , Mutsuo Saito , tsvwg-chairs@ietf.org, Emmanuel Baccelli
2019-06-17
06 Vincent Roca Uploaded new revision
2019-06-17
05 Vincent Roca New version available: draft-ietf-tsvwg-tinymt32-05.txt
2019-06-17
05 (System) New version approved
2019-06-17
05 (System) Request for posting confirmation emailed to previous authors: Makoto Matsumoto , Vincent Roca , Mutsuo Saito , tsvwg-chairs@ietf.org, Emmanuel Baccelli
2019-06-17
05 Vincent Roca Uploaded new revision
2019-06-13
04 Roman Danyliw [Ballot comment]
Thank you for addressing my DISCUSSes and COMMENTs
2019-06-13
04 Roman Danyliw [Ballot Position Update] Position for Roman Danyliw has been changed to No Objection from Discuss
2019-06-12
04 (System) Sub state has been changed to AD Followup from Revised ID Needed
2019-06-12
04 (System) IANA Review state changed to Version Changed - Review Needed from IANA OK - No Actions Needed
2019-06-12
04 Vincent Roca New version available: draft-ietf-tsvwg-tinymt32-04.txt
2019-06-12
04 (System) New version approved
2019-06-12
04 (System) Request for posting confirmation emailed to previous authors: Makoto Matsumoto , Vincent Roca , Mutsuo Saito , tsvwg-chairs@ietf.org, Emmanuel Baccelli
2019-06-12
04 Vincent Roca Uploaded new revision
2019-05-30
03 Cindy Morgan IESG state changed to IESG Evaluation::Revised I-D Needed from IESG Evaluation
2019-05-29
03 Suresh Krishnan [Ballot Position Update] New position, No Objection, has been recorded for Suresh Krishnan
2019-05-29
03 Amanda Baber IANA Review state changed to IANA OK - No Actions Needed from Version Changed - Review Needed
2019-05-29
03 Warren Kumari
[Ballot comment]
I sometimes ballot "NoObj" in the "I read the protocol action, and I trust the sponsoring AD so have no problem" sense of …
[Ballot comment]
I sometimes ballot "NoObj" in the "I read the protocol action, and I trust the sponsoring AD so have no problem" sense of the term.. but this time I'm using it in the "Goodness me, this is WAY outside my area of expertise" sense of the term.

[Edit:
I felt bad for not being able to do a more useful review, so I instead made sure that the code in the document actually generates the includes test vectors (and it does):

$ gcc -o out tinymt32.c ; ./out
1: 2545341989
2: 981918433
3: 3715302833
4: 2387538352
5: 3591001365
6: 3820442102
7: 2114400566
8: 2196103051
9: 2783359912
10: 764534509
11: 643179475
12: 1822416315
13: 881558334
14: 4207026366
15: 3690273640
16: 3240535687
17: 2921447122
18: 3984931427
19: 4092394160
20: 44209675
21: 2188315343
22: 2908663843
23: 1834519336
24: 3774670961
25: 3019990707
26: 4065554902
27: 1239765502
28: 4035716197
29: 3412127188
30: 552822483
31: 161364450
32: 353727785
33: 140085994
34: 149132008
35: 2547770827
36: 4064042525
37: 4078297538
38: 2057335507
39: 622384752
40: 2041665899
41: 2193913817
42: 1080849512
43: 33160901
44: 662956935
45: 642999063
46: 3384709977
47: 1723175122
48: 3866752252
49: 521822317
50: 2292524454

This doesn't really say anything about the correctness of the document / algorithm, but does at least confirm that the code and test vectors match.
2019-05-29
03 Warren Kumari Ballot comment text updated for Warren Kumari
2019-05-29
03 Warren Kumari
[Ballot comment]
I sometimes ballot "NoObj" in the "I read the protocol action, and I trust the sponsoring AD so have no problem" sense of …
[Ballot comment]
I sometimes ballot "NoObj" in the "I read the protocol action, and I trust the sponsoring AD so have no problem" sense of the term.. but this time I'm using it in the "Goodness me, this is WAY outside my area of expertise" sense of the term.
2019-05-29
03 Warren Kumari [Ballot Position Update] New position, No Objection, has been recorded for Warren Kumari
2019-05-29
03 Alissa Cooper [Ballot Position Update] New position, No Objection, has been recorded for Alissa Cooper
2019-05-29
03 Adam Roach
[Ballot discuss]
The normative portion of this document is the machine code in section 3.1. There
is no definition or citation for the formal language …
[Ballot discuss]
The normative portion of this document is the machine code in section 3.1. There
is no definition or citation for the formal language used in this document. The
document needs to either define or normatively cite the definition of this
language.

I suspect that the citation you want is ISO/IEC 9899:1999 (or a newer document
in that same series).
2019-05-29
03 Adam Roach [Ballot Position Update] New position, Discuss, has been recorded for Adam Roach
2019-05-29
03 Deborah Brungard [Ballot Position Update] New position, No Objection, has been recorded for Deborah Brungard
2019-05-28
03 Benjamin Kaduk
[Ballot comment]
In Section 3.1:

  o  the original copyright and licence have been removed, in
      accordance with BCP 78 and the …
[Ballot comment]
In Section 3.1:

  o  the original copyright and licence have been removed, in
      accordance with BCP 78 and the IETF Trust's Legal Provisions
      Relating to IETF Documents (http://trustee.ietf.org/license-info);

The original copyright holder's permission is needed to do this!  Perhaps
it is appropriate to note that the original authors are now listed as
authors on this document.

Please also specify what language the code in Section 3.1 is written in,
including reference (so as to specify which version of C it is to be
intepreted as).

I agree with the secdir reviewer and Mirja that some more references
would be good.

Section-by-section comments follow.

Abstract

  while keeping a reasonably good randomness.

please add the "non-cryptographic" qualifier.

Section 1

                          According to statistical tests (BigCrush in
  TestU01 and AdaptiveCrush), the quality of the outputs of TinyMT
  seems pretty good in terms of randomnes (in particular the uniformity
  of generated numbers), taking the small size of the internal state
  into consideration (see [TinyMT-web]).  [...]

I'd suggest rewording as "The outputs of TinyMT satisfy several
statistical tests for (non-cryptographic) randomness, including BigCrush
in TestU01 and AdaptiveCrush), leaving it well-placed for
non-cryptographic usage, especially given the small size of its internal
state." or similar.  (This avoids the "pretty good" construct and moves
the emphasis from the tests to the usability of the algorithm.)

Section 3.1

  o  mat1 = 0x8f7011ee = 2406486510
  o  mat2 = 0xfc78ff1f = 4235788063
  o  tmat = 0x3793fdff = 932445695

side note: these first two have the MSB set, and thus when the
decimal form of the constant is used in C code, the implicit type will
be a signed integer type of width strictly greater than 32, as opposed
to an unsigned integer type (which would presumably have width 32 bits
on most modern sytsems).

      for (int i = 1; i < MIN_LOOP; i++) {
          s->status[i & 3] ^= i + UINT32_C(1812433253)
              * (s->status[(i - 1) & 3]
                  ^ (s->status[(i - 1) & 3] >> 30));

side note: I note that the UINT32_C macro produces a result of type
uint_least32_t, which in theory could be wider and of greater conversion
rank than uint32_t.  This would result in the intermediate calculations
being done in a type other than uint32_t, though for the specific
calculation here this should not cause any difference in the final
output after truncation to 32 bits.

Section 3.2

  This PRNG MUST first be initialized with the following function:

      void tinymt32_init (tinymt32_t * s, uint32_t seed);

nit: the pointer declaration style here was missed in the style pass
done in a recent revision.

  It takes as input a 32-bit unsigned integer used as a seed (note that
  value 0 is authorized by TinyMT32).  [...]

nit: perhaps "permitted" is a better word than "authorized", which can
have some different connotations to IETF readers.

                                    The use of this structure authorizes
  several instances of this PRNG to be used in parallel, each of them
  having its own instance of the structure.

nit: here, "admits" is a better replacement for "authorizes" (but
"permits" would be fine, too).

Section 3.3

              Consequently, any implementation of the TinyMT32 PRNG in
  line with this specification MUST comply with the following criteria.
  Using a seed value of 1, the first 50 values returned by
  tinymt32_generate_uint32(s) as 32-bit unsigned integers MUST be equal
  to values provided in Figure 2.  [...]

I don't think it's appropriate to attempt to use "agreement with these
test vectors" as a compliance mechanism (i.e., normative "MUST") -- the
normative requirement must surely be to have the same observable
behavior as the algorithm specified in the C code of Section 3.1.  These
vectors are just test vectors to give an implementor some confidence
that they agree with the reference behavior.

(You also need to say whether I read rows first or columns first in the
Figure's contents.)
2019-05-28
03 Benjamin Kaduk [Ballot Position Update] New position, No Objection, has been recorded for Benjamin Kaduk
2019-05-28
03 Roman Danyliw
[Ballot discuss]
(1) Section 1.  Per “The TinyMT32 PRNG initialization depends, among other things, on a parameter set -- namely (mat1, mat2, tmat) -- that …
[Ballot discuss]
(1) Section 1.  Per “The TinyMT32 PRNG initialization depends, among other things, on a parameter set -- namely (mat1, mat2, tmat) -- that needs to be well chosen (pre-calculated values are available in the official web site).”, why is there a reference to an external website when Section 3.1 explicitly lists the constant and mandates their usage?  I’m elevating this to a discuss as there should be no ambiguity on the location of these constants.

(2) Section 3.1.  A comment in tinymt32_next_state() notes code changes made to the “original code … [so it is] not depend on the representation of negative integers by 2's complements.”  The following code in tinymt32_temper() appears to suffer from this same, original portability issue:
t0 ^= -((int32_t)(t1 & 1)) & s->tmat;
2019-05-28
03 Roman Danyliw
[Ballot comment]
(1) Section 1.  “BigCrush in TestU01 and AdaptiveCrush” needs a reference.

(2) Abstract and Section 1.  I found characterizing the quality of the …
[Ballot comment]
(1) Section 1.  “BigCrush in TestU01 and AdaptiveCrush” needs a reference.

(2) Abstract and Section 1.  I found characterizing the quality of the randomness as “pretty good” imprecise (relative to what?).  Can this statement be qualified or qualified in some way?

(3) Section 1 (“This is the first difference …”) and Section 3.1 (“The TinyMT32 PRNG reference implementation is reproduced in Figure 1, with the following differences …”) both enumerate a list of differences between the github repo and the code in this text.  Why are both required? Section 3.1 seems more precise.

(4) Section 1.  I am confused by the terminology of “official web site” and “official github site”.  What makes them official?

(5) Section 1.  With due respect to the first two authors, it seems odd to mention them by name three times in this section.  Also, the fact that this document is derived from a github repo is mentioned twice in this section and once in the code comments of Section 3.1.

(6) Section 3.1.  There are normative C code blocks in this text.  The obvious fact that this is C code needs to be specified – consider C99 (ISO/IEC 9899:1999), C11 (ISO/IEC 9899:2011), C18 (ISO/IEC 9899:2018)

(7) Section 3.1.  I agree with ekr’s original comment that hard coded a constant in tinymt32_init() makes the code less readable -- “s->status[i & 3] ^= i + UINT32_C(1812433253)”

(8) Editorial Nits

Abstract.  No references are permitted in the abstract.
Section 1.  Typo.  s/variatnt/variant/
Section 1.  Typo.  s/randomnes/randomness/
Section 3.1.  Typo.  s/licence/license/
2019-05-28
03 Roman Danyliw [Ballot Position Update] New position, Discuss, has been recorded for Roman Danyliw
2019-05-28
03 Barry Leiba
[Ballot comment]
— Abstract —

  The main
  advantage of TinyMT32 over MT is the use of a small internal state,
  compatible with …
[Ballot comment]
— Abstract —

  The main
  advantage of TinyMT32 over MT is the use of a small internal state,
  compatible with most target platforms including embedded devices,
  while keeping a reasonably good randomness.

The difference between “most target platforms including embedded devices,” and “most target platforms, including embedded devices,” is too subtle to be sure that readers get the meaning right.  I think the sentence would be clearer if it said, “most target platforms that include embedded devices,”.

— Section 1 —

  the quality of the outputs of TinyMT
  seems pretty good in terms of randomnes

Make it “randomness”.

  However, neither the TinyMT
  nor MT PRNG are meant to be used for cryptographic applications.

This seems a bit more buried than it should be, as it’s important.  I suggest putting some version of this in the Abstract, and also moving it more toward the beginning of the Introduction (probably in the first paragraph.
2019-05-28
03 Barry Leiba [Ballot Position Update] New position, No Objection, has been recorded for Barry Leiba
2019-05-28
03 Martin Vigoureux
[Ballot comment]
Hi,

I only have a minor question:
In which direction should the numbers of Figure 2 be read, per column or per line? …
[Ballot comment]
Hi,

I only have a minor question:
In which direction should the numbers of Figure 2 be read, per column or per line?

nit:
s/will then updated/will then be updated/
2019-05-28
03 Martin Vigoureux [Ballot Position Update] New position, No Objection, has been recorded for Martin Vigoureux
2019-05-27
03 (System) IANA Review state changed to Version Changed - Review Needed from IANA OK - No Actions Needed
2019-05-27
03 Vincent Roca New version available: draft-ietf-tsvwg-tinymt32-03.txt
2019-05-27
03 (System) New version approved
2019-05-27
03 (System) Request for posting confirmation emailed to previous authors: Makoto Matsumoto , Vincent Roca , Mutsuo Saito , tsvwg-chairs@ietf.org, Emmanuel Baccelli
2019-05-27
03 Vincent Roca Uploaded new revision
2019-05-24
02 Alvaro Retana [Ballot Position Update] New position, No Objection, has been recorded for Alvaro Retana
2019-05-23
02 Tero Kivinen Request for Telechat review by SECDIR is assigned to Carl Wallace
2019-05-23
02 Tero Kivinen Request for Telechat review by SECDIR is assigned to Carl Wallace
2019-05-23
02 Tero Kivinen Request for Last Call review by SECDIR Completed: Has Issues. Reviewer: Carl Wallace.
2019-05-20
02 Mirja Kühlewind
[Ballot comment]
I agree with Eric that a reference to MT would be really good.

As mentioned in the intro, "neither TinyMT nor MT are …
[Ballot comment]
I agree with Eric that a reference to MT would be really good.

As mentioned in the intro, "neither TinyMT nor MT are meant to be used for cryptographic applications". Please add this also to the security considerations section and maybe further explain risks.

Similar as the feedback originally provided (by other ADs) for draft-ietf-tsvwg-rlc-fec-scheme, I would prefer to have the algorithm specified in text and not only as code.
2019-05-20
02 Mirja Kühlewind [Ballot Position Update] New position, No Objection, has been recorded for Mirja Kühlewind
2019-05-20
02 Amanda Baber IANA Review state changed to IANA OK - No Actions Needed from Version Changed - Review Needed
2019-05-18
02 Éric Vyncke
[Ballot comment]
Thanks for the work everyone has put into this document (and I understand that this -02 is coming out of another older document). …
[Ballot comment]
Thanks for the work everyone has put into this document (and I understand that this -02 is coming out of another older document). While the mathematical aspects of the document are above my head, I took the liberty to put 3 comments and 1 nit in the hope to improve the quality of the document.


== COMMENTS ==

-- Introduction  --

Why not using the usual format for informative references in this chapter?

The Mersenne Twister is part of the sentence but there are no reference to any paper. Please add a reference for the seminal piece of work.

"...TinyMT32 represents a major improvement ..." can we have more information about this improvment? On which aspect ?
 
== NITS ==

-- Abstract  --

I find it a little surprizing that two authors are cited in the abstract.
2019-05-18
02 Éric Vyncke [Ballot Position Update] New position, No Objection, has been recorded for Éric Vyncke
2019-05-16
02 (System) IANA Review state changed to Version Changed - Review Needed from IANA OK - No Actions Needed
2019-05-16
02 Vincent Roca New version available: draft-ietf-tsvwg-tinymt32-02.txt
2019-05-16
02 (System) New version approved
2019-05-16
02 (System) Request for posting confirmation emailed to previous authors: Makoto Matsumoto , Vincent Roca , Mutsuo Saito , tsvwg-chairs@ietf.org, Emmanuel Baccelli
2019-05-16
02 Vincent Roca Uploaded new revision
2019-05-16
01 Cindy Morgan Placed on agenda for telechat - 2019-05-30
2019-05-16
01 Magnus Westerlund IESG state changed to IESG Evaluation from Waiting for AD Go-Ahead
2019-05-16
01 Magnus Westerlund IESG state changed to Waiting for AD Go-Ahead from Waiting for Writeup
2019-05-16
01 Magnus Westerlund Ballot has been issued
2019-05-16
01 Magnus Westerlund [Ballot Position Update] New position, Yes, has been recorded for Magnus Westerlund
2019-05-16
01 Magnus Westerlund Created "Approve" ballot
2019-05-16
01 Magnus Westerlund Ballot writeup was changed
2019-05-13
01 (System) IESG state changed to Waiting for Writeup from In Last Call
2019-05-08
01 Gunter Van de Velde Request for Last Call review by OPSDIR is assigned to Jon Mitchell
2019-05-08
01 Gunter Van de Velde Request for Last Call review by OPSDIR is assigned to Jon Mitchell
2019-05-08
01 Stewart Bryant Request for Last Call review by GENART Completed: Ready with Nits. Reviewer: Stewart Bryant. Sent review to list.
2019-05-06
01 (System) IANA Review state changed to IANA OK - No Actions Needed from IANA - Review Needed
2019-05-06
01 Michelle Cotton
(Via drafts-lastcall-comment@iana.org): IESG/Authors/WG Chairs:

The IANA Functions Operator has reviewed draft-ietf-tsvwg-tinymt32-01, which is currently in Last Call, and has the following comments:

We …
(Via drafts-lastcall-comment@iana.org): IESG/Authors/WG Chairs:

The IANA Functions Operator has reviewed draft-ietf-tsvwg-tinymt32-01, which is currently in Last Call, and has the following comments:

We understand that this document doesn't require any registry actions.

While it's often helpful for a document's IANA Considerations section to remain in place upon publication even if there are no actions, if the authors strongly prefer to remove it, we do not object.

If this assessment is not accurate, please respond as soon as possible.

Thank you,

Michelle Cotton
IANA Services
2019-05-03
01 Tero Kivinen Request for Last Call review by SECDIR is assigned to Carl Wallace
2019-05-03
01 Tero Kivinen Request for Last Call review by SECDIR is assigned to Carl Wallace
2019-05-01
01 Jean Mahoney Request for Last Call review by GENART is assigned to Stewart Bryant
2019-05-01
01 Jean Mahoney Request for Last Call review by GENART is assigned to Stewart Bryant
2019-04-29
01 Amy Vezza IANA Review state changed to IANA - Review Needed
2019-04-29
01 Amy Vezza
The following Last Call announcement was sent out (ends 2019-05-13):

From: The IESG
To: IETF-Announce
CC: magnus.westerlund@ericsson.com, tsvwg@ietf.org, wes@mti-systems.com, draft-ietf-tsvwg-tinymt32@ietf.org, tsvwg-chairs@ietf.org …
The following Last Call announcement was sent out (ends 2019-05-13):

From: The IESG
To: IETF-Announce
CC: magnus.westerlund@ericsson.com, tsvwg@ietf.org, wes@mti-systems.com, draft-ietf-tsvwg-tinymt32@ietf.org, tsvwg-chairs@ietf.org, Wesley Eddy
Reply-To: ietf@ietf.org
Sender:
Subject: Last Call:  (TinyMT32 Pseudo Random Number Generator (PRNG)) to Proposed Standard


The IESG has received a request from the Transport Area Working Group WG
(tsvwg) to consider the following document: - 'TinyMT32 Pseudo Random Number
Generator (PRNG)'
  as Proposed Standard

The IESG plans to make a decision in the next few weeks, and solicits final
comments on this action. Please send substantive comments to the
ietf@ietf.org mailing lists by 2019-05-13. Exceptionally, comments may be
sent to iesg@ietf.org instead. In either case, please retain the beginning of
the Subject line to allow automated sorting.

Abstract


  This document describes the TinyMT32 Pseudo Random Number Generator
  (PRNG) that produces 32-bit pseudo-random unsigned integers and aims
  at having a simple-to-use and deterministic solution.  This PRNG is a
  small-sized variant of Mersenne Twister (MT) PRNG, also designed by
  M.  Saito and M.  Matsumoto.  The main advantage of TinyMT32 over MT
  is the use of a small internal state, compatible with most target
  platforms including embedded devices, while keeping a reasonably good
  randomness.




The file can be obtained via
https://datatracker.ietf.org/doc/draft-ietf-tsvwg-tinymt32/

IESG discussion can be tracked via
https://datatracker.ietf.org/doc/draft-ietf-tsvwg-tinymt32/ballot/


No IPR declarations have been submitted directly on this I-D.




2019-04-29
01 Amy Vezza IESG state changed to In Last Call from Last Call Requested
2019-04-29
01 Magnus Westerlund Last call was requested
2019-04-29
01 Magnus Westerlund Last call announcement was generated
2019-04-29
01 Magnus Westerlund Ballot approval text was generated
2019-04-29
01 Magnus Westerlund Ballot writeup was generated
2019-04-29
01 Magnus Westerlund IESG state changed to Last Call Requested from AD Evaluation
2019-04-29
01 Magnus Westerlund IESG state changed to AD Evaluation from Publication Requested
2019-04-25
01 Wesley Eddy
As required by RFC 4858, this is the current template for the Document
Shepherd Write-Up.

Changes are expected over time. This version is dated …
As required by RFC 4858, this is the current template for the Document
Shepherd Write-Up.

Changes are expected over time. This version is dated 24 February 2012.

(1) What type of RFC is being requested (BCP, Proposed Standard,
Internet Standard, Informational, Experimental, or Historic)?  Why
is this the proper type of RFC?  Is this type of RFC indicated in the
title page header?

Proposed Standard, with "Standards Track" indicated in the title page header.

(2) The IESG approval announcement includes a Document Announcement
Write-Up. Please provide such a Document Announcement Write-Up. Recent
examples can be found in the "Action" announcements for approved
documents. The approval announcement contains the following sections:

Technical Summary

  This document describes the TinyMT32 Pseudo Random Number Generator
  (PRNG) that produces 32-bit pseudo-random unsigned integers and aims
  at having a simple-to-use and deterministic solution.  This PRNG is a
  small-sized variant of Mersenne Twister (MT) PRNG, also designed by
  M.  Saito and M.  Matsumoto.  The main advantage of TinyMT32 over MT
  is the use of a small internal state, compatible with most target
  platforms including embedded devices, while keeping a reasonably good
  randomness.

Working Group Summary

  This document was created from content that had been within another document (draft-ietf-tsvwg-rlc-fec-scheme) in order to correct copyright issues that where noted in the IESG review of that other document.  Thus, the majority of the content of this document went through two working group last calls (one while it was part of the RLC FEC document that received many specific reviews, and one by itself, with less reviews).

Document Quality

  Are there existing implementations of the protocol? Have a
  significant number of vendors indicated their plan to
  implement the specification? Are there any reviewers that
  merit special mention as having done a thorough review,
  e.g., one that resulted in important changes or a
  conclusion that the document had no substantive issues? If
  there was a MIB Doctor, Media Type or other expert review,
  what was its course (briefly)? In the case of a Media Type
  review, on what date was the request posted?

There have been implementations, specifically related to the RLC FEC scheme.  These implementations were reported to the working group, and the documents benefited from the implementation and testing experience.  The document itself also contains most of an implementation as the source-code description of the algorithm.


Personnel

  Wesley Eddy is the document shepherd, and Magnus Westerlund is the responsible Area Director.

(3) Briefly describe the review of this document that was performed by
the Document Shepherd.  If this version of the document is not ready
for publication, please explain why the document is being forwarded to
the IESG.

The document has been completely reviewed, and is ready for publication.

(4) Does the document Shepherd have any concerns about the depth or
breadth of the reviews that have been performed?

No concerns.

(5) Do portions of the document need review from a particular or from
broader perspective, e.g., security, operational complexity, AAA, DNS,
DHCP, XML, or internationalization? If so, describe the review that
took place.

No specific additional reviews are necessary.

(6) Describe any specific concerns or issues that the Document Shepherd
has with this document that the Responsible Area Director and/or the
IESG should be aware of? For example, perhaps he or she is uncomfortable
with certain parts of the document, or has concerns whether there really
is a need for it. In any event, if the WG has discussed those issues and
has indicated that it still wishes to advance the document, detail those
concerns here.

No concerns or issues.

(7) Has each author confirmed that any and all appropriate IPR
disclosures required for full conformance with the provisions of BCP 78
and BCP 79 have already been filed. If not, explain why.

There are no IPR disclosures.

(8) Has an IPR disclosure been filed that references this document?
If so, summarize any WG discussion and conclusion regarding the IPR
disclosures.

There are no IPR disclosures.

(9) How solid is the WG consensus behind this document? Does it
represent the strong concurrence of a few individuals, with others
being silent, or does the WG as a whole understand and agree with it? 

There is reasonable consensus around this, and no contention.

(10) Has anyone threatened an appeal or otherwise indicated extreme
discontent? If so, please summarise the areas of conflict in separate
email messages to the Responsible Area Director. (It should be in a
separate email because this questionnaire is publicly available.)

There are no threats of appeals or indications of discontent.

(11) Identify any ID nits the Document Shepherd has found in this
document. (See https://www.ietf.org/tools/idnits/ and the Internet-Drafts
Checklist). Boilerplate checks are not enough; this check needs to be
thorough.

There are no significant ID-nits.  In version -01, there is an extra space reported in line 209, but this is spurious and related to formatting of the code's inline documentation.

(12) Describe how the document meets any required formal review
criteria, such as the MIB Doctor, media type, and URI type reviews.

None relevant.

(13) Have all references within this document been identified as
either normative or informative?

Yes.

(14) Are there normative references to documents that are not ready for
advancement or are otherwise in an unclear state? If such normative
references exist, what is the plan for their completion?

There are no issues with the normative references.

(15) Are there downward normative references references (see RFC 3967)?
If so, list these downward references to support the Area Director in
the Last Call procedure.

No downward references.

(16) Will publication of this document change the status of any
existing RFCs? Are those RFCs listed on the title page header, listed
in the abstract, and discussed in the introduction? If the RFCs are not
listed in the Abstract and Introduction, explain why, and point to the
part of the document where the relationship of this document to the
other RFCs is discussed. If this information is not in the document,
explain why the WG considers it unnecessary.

No changes in other RFCs status.

(17) Describe the Document Shepherd's review of the IANA considerations
section, especially with regard to its consistency with the body of the
document. Confirm that all protocol extensions that the document makes
are associated with the appropriate reservations in IANA registries.
Confirm that any referenced IANA registries have been clearly
identified. Confirm that newly created IANA registries include a
detailed specification of the initial contents for the registry, that
allocations procedures for future registrations are defined, and a
reasonable name for the new registry has been suggested (see RFC 5226).

The IANA considerations are sufficient (no actions required from IANA).

(18) List any new IANA registries that require Expert Review for future
allocations. Provide any public guidance that the IESG would find
useful in selecting the IANA Experts for these new registries.

No new registries.

(19) Describe reviews and automated checks performed by the Document
Shepherd to validate sections of the document written in a formal
language, such as XML code, BNF rules, MIB definitions, etc.

No automated checks performed.
2019-04-25
01 Wesley Eddy Responsible AD changed to Magnus Westerlund
2019-04-25
01 Wesley Eddy IETF WG state changed to Submitted to IESG for Publication from In WG Last Call
2019-04-25
01 Wesley Eddy IESG state changed to Publication Requested from I-D Exists
2019-04-25
01 Wesley Eddy IESG process started in state Publication Requested
2019-04-25
01 Wesley Eddy Changed consensus to Yes from Unknown
2019-04-25
01 Wesley Eddy Intended Status changed to Proposed Standard from None
2019-04-18
01 Wesley Eddy
As required by RFC 4858, this is the current template for the Document
Shepherd Write-Up.

Changes are expected over time. This version is dated …
As required by RFC 4858, this is the current template for the Document
Shepherd Write-Up.

Changes are expected over time. This version is dated 24 February 2012.

(1) What type of RFC is being requested (BCP, Proposed Standard,
Internet Standard, Informational, Experimental, or Historic)?  Why
is this the proper type of RFC?  Is this type of RFC indicated in the
title page header?

Proposed Standard, with "Standards Track" indicated in the title page header.

(2) The IESG approval announcement includes a Document Announcement
Write-Up. Please provide such a Document Announcement Write-Up. Recent
examples can be found in the "Action" announcements for approved
documents. The approval announcement contains the following sections:

Technical Summary

  This document describes the TinyMT32 Pseudo Random Number Generator
  (PRNG) that produces 32-bit pseudo-random unsigned integers and aims
  at having a simple-to-use and deterministic solution.  This PRNG is a
  small-sized variant of Mersenne Twister (MT) PRNG, also designed by
  M.  Saito and M.  Matsumoto.  The main advantage of TinyMT32 over MT
  is the use of a small internal state, compatible with most target
  platforms including embedded devices, while keeping a reasonably good
  randomness.

Working Group Summary

  This document was created from content that had been within another document (draft-ietf-tsvwg-rlc-fec-scheme) in order to correct copyright issues that where noted in the IESG review of that other document.  Thus, the majority of the content of this document went through two working group last calls (one while it was part of the RLC FEC document that received many specific reviews, and one by itself, with less reviews).

Document Quality

  Are there existing implementations of the protocol? Have a
  significant number of vendors indicated their plan to
  implement the specification? Are there any reviewers that
  merit special mention as having done a thorough review,
  e.g., one that resulted in important changes or a
  conclusion that the document had no substantive issues? If
  there was a MIB Doctor, Media Type or other expert review,
  what was its course (briefly)? In the case of a Media Type
  review, on what date was the request posted?

There have been implementations, specifically related to the RLC FEC scheme.  These implementations were reported to the working group, and the documents benefited from the implementation and testing experience.  The document itself also contains most of an implementation as the source-code description of the algorithm.


Personnel

  Wesley Eddy is the document shepherd, and Magnus Westerlund is the responsible Area Director.

(3) Briefly describe the review of this document that was performed by
the Document Shepherd.  If this version of the document is not ready
for publication, please explain why the document is being forwarded to
the IESG.

The document has been completely reviewed, and is ready for publication.

(4) Does the document Shepherd have any concerns about the depth or
breadth of the reviews that have been performed?

No concerns.

(5) Do portions of the document need review from a particular or from
broader perspective, e.g., security, operational complexity, AAA, DNS,
DHCP, XML, or internationalization? If so, describe the review that
took place.

No specific additional reviews are necessary.

(6) Describe any specific concerns or issues that the Document Shepherd
has with this document that the Responsible Area Director and/or the
IESG should be aware of? For example, perhaps he or she is uncomfortable
with certain parts of the document, or has concerns whether there really
is a need for it. In any event, if the WG has discussed those issues and
has indicated that it still wishes to advance the document, detail those
concerns here.

No concerns or issues.

(7) Has each author confirmed that any and all appropriate IPR
disclosures required for full conformance with the provisions of BCP 78
and BCP 79 have already been filed. If not, explain why.

There are no IPR disclosures.

(8) Has an IPR disclosure been filed that references this document?
If so, summarize any WG discussion and conclusion regarding the IPR
disclosures.

There are no IPR disclosures.

(9) How solid is the WG consensus behind this document? Does it
represent the strong concurrence of a few individuals, with others
being silent, or does the WG as a whole understand and agree with it? 

There is reasonable consensus around this, and no contention.

(10) Has anyone threatened an appeal or otherwise indicated extreme
discontent? If so, please summarise the areas of conflict in separate
email messages to the Responsible Area Director. (It should be in a
separate email because this questionnaire is publicly available.)

There are no threats of appeals or indications of discontent.

(11) Identify any ID nits the Document Shepherd has found in this
document. (See https://www.ietf.org/tools/idnits/ and the Internet-Drafts
Checklist). Boilerplate checks are not enough; this check needs to be
thorough.

There are no significant ID-nits.  In version -01, there is an extra space reported in line 209, but this is spurious and related to formatting of the code's inline documentation.

(12) Describe how the document meets any required formal review
criteria, such as the MIB Doctor, media type, and URI type reviews.

None relevant.

(13) Have all references within this document been identified as
either normative or informative?

Yes.

(14) Are there normative references to documents that are not ready for
advancement or are otherwise in an unclear state? If such normative
references exist, what is the plan for their completion?

There are no issues with the normative references.

(15) Are there downward normative references references (see RFC 3967)?
If so, list these downward references to support the Area Director in
the Last Call procedure.

No downward references.

(16) Will publication of this document change the status of any
existing RFCs? Are those RFCs listed on the title page header, listed
in the abstract, and discussed in the introduction? If the RFCs are not
listed in the Abstract and Introduction, explain why, and point to the
part of the document where the relationship of this document to the
other RFCs is discussed. If this information is not in the document,
explain why the WG considers it unnecessary.

No changes in other RFCs status.

(17) Describe the Document Shepherd's review of the IANA considerations
section, especially with regard to its consistency with the body of the
document. Confirm that all protocol extensions that the document makes
are associated with the appropriate reservations in IANA registries.
Confirm that any referenced IANA registries have been clearly
identified. Confirm that newly created IANA registries include a
detailed specification of the initial contents for the registry, that
allocations procedures for future registrations are defined, and a
reasonable name for the new registry has been suggested (see RFC 5226).

The IANA considerations are sufficient (no actions required from IANA).

(18) List any new IANA registries that require Expert Review for future
allocations. Provide any public guidance that the IESG would find
useful in selecting the IANA Experts for these new registries.

No new registries.

(19) Describe reviews and automated checks performed by the Document
Shepherd to validate sections of the document written in a formal
language, such as XML code, BNF rules, MIB definitions, etc.

No automated checks performed.
2019-04-18
01 Wesley Eddy Notification list changed to Wesley Eddy <wes@mti-systems.com>
2019-04-18
01 Wesley Eddy Document shepherd changed to Wesley Eddy
2019-04-08
01 Vincent Roca New version available: draft-ietf-tsvwg-tinymt32-01.txt
2019-04-08
01 (System) New version approved
2019-04-08
01 (System) Request for posting confirmation emailed to previous authors: Makoto Matsumoto , Vincent Roca , Mutsuo Saito , tsvwg-chairs@ietf.org, Emmanuel Baccelli
2019-04-08
01 Vincent Roca Uploaded new revision
2019-04-03
00 Wesley Eddy IETF WG state changed to In WG Last Call from WG Document
2019-04-02
00 Wesley Eddy This document now replaces draft-roca-tsvwg-tinymt32 instead of None
2019-04-02
00 Vincent Roca New version available: draft-ietf-tsvwg-tinymt32-00.txt
2019-04-02
00 (System) WG -00 approved
2019-04-02
00 Vincent Roca Set submitter to "Vincent Roca ", replaces to draft-roca-tsvwg-tinymt32 and sent approval email to group chairs: tsvwg-chairs@ietf.org
2019-04-02
00 Vincent Roca Uploaded new revision