LINUX.ORG.RU
ФорумTalks

[ГПСЧ][GPG] Генерация ключа

 


0

0

Недавно я обалдел от новости что под гентой ключи генерятся раз в 50 быстрее, чем под *бунтой. «На глаз» это было видно в скорости создания ключа OTR плагином копыта. Погуглил, почитал, написал тестовую программу.

#include <libotr/privkey.h>
#include <libotr/proto.h>
int main()
{
OTRL_INIT;
char* a = "/tmp/key";
char* b = "acc";
char* c = "user";
otrl_privkey_generate(otrl_userstate_create(), a, b, c );
return 0;
}
Для компиляции требуется библиотека otr (в генте это libotr, в бунте libotr2-dev). А сколько этот тест работает на вашем компьютере? Я так понимаю его скорость зависит напрямую от скорости работы /dev/(u?)random. Как её можно увеличить не сильно в ущерб качеству?

И да, компилять так:
gcc -lotr ./otr.c
А потом time ./a.out и в путь...

proDOOMman ★★
() автор топика
Ответ на: комментарий от Werehuman

О, наконец-то.

[werehuman@lithium /tmp/otr] $ cat otr.c
#include <libotr/privkey.h>
#include <libotr/proto.h>
int main()
{
  OTRL_INIT;
  char* a = "/tmp/key";
  char* b = "acc";
  char* c = "user";
  otrl_privkey_generate(otrl_userstate_create(), a, b, c );
  return 0;
}
[werehuman@lithium /tmp/otr] $ gcc -o otr otr.c /usr/lib/libotr.so
[werehuman@lithium /tmp/otr] $ time ./otr

real    1m19.273s
user    0m0.247s
sys     0m0.000s
Werehuman ★★
()
Ответ на: комментарий от anotheranonymous

Вот оно откуда ноги растут. Спасибо.
Но все де интересно как тот же пиджин создает ключ секунд за 5 безо всякого возюкания.

proDOOMman ★★
() автор топика

[code] ./a.out 0.08s user 0.00s system 1% cpu 6.562 total [/code]

ezoteric
()
Ответ на: комментарий от proDOOMman

Напишите еще пожалуйста версию libgcrypt и libotr. Может в них дело?

proDOOMman ★★
() автор топика

Как-то так:
pinipini@pininotebook2:/work$ time ./a.out
v ht,[^[OM'
]^[OM"/k,mnhytkdul.[]
';lkjhgfdsvcvgfhtw
real 0m7.672s
user 0m0.471s
sys 0m0.002s
pinipini@pininotebook2:/work$ time ./a.out

real 0m21.232s
user 0m0.506s
sys 0m0.000s
pinipini@pininotebook2:/work$ time ./a.out
fvbkfdm faekhpwe[]v .'sg,rbv
x,mvjtsred;. ,fmngodip]x
[c;l mgjfidsofp;c ,.nkjoeirp[;
fs'd/vc> ,nkvoifp][ef'
c. ?<khljvbopfig[]
;>?<m jbfpogi[e]
;c/ ^C

real 0m4.105s
user 0m0.214s
sys 0m0.004s
pinipini@pininotebook2:/work$ cat /proc/cpuinfo |grep -ri model
model : 3
model name : AMD Turion(tm) X2 Ultra Dual-Core Mobile ZM-82
model : 3
model name : AMD Turion(tm) X2 Ultra Dual-Core Mobile ZM-82

LebedevRI
()
Ответ на: комментарий от LebedevRI

И да:
pinipini@pininotebook2:/work$ uname -a
Linux pininotebook2.pini-pini.lcl 2.6.33-rc4-pininotebook2 #1 SMP PREEMPT Thu Jan 14 17:23:08 MSK 2010 x86_64 AMD Turion(tm) X2 Ultra Dual-Core Mobile ZM-82 AuthenticAMD GNU/Linux
ACCEPT_KEYWORDS=«amd64 ~amd64»

LebedevRI
()

real 0m22.628s user 0m2.113s sys 0m0.007s Linux 2.6.32-ARCH 686 Intel(R) Atom(TM) CPU N270 @ 1.60GHz

GblGbl ★★★★★
()
real		0m6.096s
user	0m0.552s
sys		0m0.005s
CXXFLAGS="-O2 -march=pentium4 -msse2 -mfpmath=sse,387 -fomit-frame-pointer"
CFLAGS="${CXXFLAGS} -pipe"
Linux user 2.6.32.2-banana #1 PREEMPT Tue Jan 5 23:18:29 MSK 2010 i686 Intel(R) Celeron(R) CPU 2.40GHz GenuineIntel GNU/Linux
[I] dev-libs/libgcrypt 1.4.4(13:58:52 19.12.2009)

[I] net-libs/libotr 3.2.0(22:46:09 17.01.2010)
Lighting ★★★★★
()

st@sparkle ~/tmp $ time ./a.out

real 0m14.557s
user 0m1.856s
sys 0m0.015s

truf
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.