# Ruby OpenSRS implementation

**URL:** <https://www.ruby-forum.com/t/ruby-opensrs-implementation/84192>\
**Category:** Ruby\
**Created:** [February 2, 2007, 5:36am UTC](https://www.ruby-forum.com/t/ruby-opensrs-implementation/84192 "2007-02-02T05:36:51Z")\
**Posts on this page:** 1\
**Page:** 1

<div class="post-metadata">

**Author:** ![studlee2](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/s/278dde/32.png) [@studlee2](https://www.ruby-forum.com/u/studlee2)\
**Post date:** [February 2, 2007, 5:36am UTC](https://www.ruby-forum.com/t/ruby-opensrs-implementation/84192/1 "2007-02-02T05:36:51Z")

</div>

I’ve been working to put an OpenSRS reseller site on rails and threw  
together a quick implementation of their XCP client protocol. It isn’t  
fully-featured, well-documented, … but it’s a start that gets most of  
the harder bits out of the way.

[http://havk.org/ruby/ruby-opensrs-0.0.1.tgz](http://havk.org/ruby/ruby-opensrs-0.0.1.tgz)

On a more general Ruby note it contains a perl-compatible Blowfish  
implementation so if you have a legacy perl app that you want to talk  
to from Ruby that does CBC Blowfish encryption in RandomIV header  
mode then this might help. The issues I ran into were that the Ruby  
Crypt::CBC wasn’t padding the way perl’s implementation desired and  
perl forcibly mangled the key to be 56 bytes long _even_ if it was  
already that long to begin with.

-steve
