+ xy = x 3 + ax 2 + b . Таким чином, стандарт рекомендує тільки несуперсінгулярние криві.  
. На кривій вибирається точка (xG, yG), xG, yG? GF (q) простого порядку n> 2 160 , n> 4  i> і обчислюється кофактор h = | E (GF (q)) |/n . В якості кривих можна і зручно вибирати у разі p = 2 криві, у яких a, b рівні 0, 1, але стандарт рекомендує все ж випадкові криві, тобто криві з випадково вибраними a, b . 
  При цьому рекомендується використовувати такі алгоритми генерації випадкових кривих: 
   1)   Випадок   q = p  . Покладемо 
  t = log 2 p , s = (t? 1)/160 , v = t? 160s . 
				
				
				
				
			  1. Вибираємо довільну рядок бітів seedE довжиною g? 160 біт, і вважаємо z рівним числу, двійкова запис якого збігається з seedE . 
 . Застосовуючи до seedE стандартну хеш-функцію SHА 1 , обчислюємо g-бітову рядок H = SHA 1 (seedE) . Вибираючи в H v самих правих бітів, отримуємо рядок c 0 довжиною v  span> бітів. 
 . Замінюючи в c 0 самий лівий біт на 0, отримуємо рядок W 0 . 
 . Для i від 1 до s робимо наступне: 
  .1 вважаємо s i