Does this work?
julia> a="abcdefgh"
"abcdefgh"
julia> reinterpret(Int64, a.data)
1-element Array{Int64,1}:
7523094288207667809
On Tuesday, 11 March 2014 16:07:35 UTC+5:30, Robert Feldt wrote:
>
> Implementing simple RSA crypto in pure Julia (not for actual sec-sensitive
> use) but for low-sec applications. But I have troubles with encoding
> strings as integers and back. The PKCS#1 crypto standard says that strings
> should be seen as 8-bit (octet) strings. I tried creating a Uint8[] with
> the byte values and converting to ASCIIString but that fails when the
> values are more than 7 bits. However, I cannot just convert to UTF8String
> instead since those might not be valid either.
>
> Ideas for how to do this cleanly? Current code below... Thanks!
>
> # Convert a non-negative integer i into an octet string.
> function i2osp(x::Integer, len = nothing)
> if typeof(len) <: Integer && (x >= 256^len)
> throw("integer is too large")
> end
>
> if x < 0
> throw("integer is negative")
> end
>
> bytes = Uint8[]
> while x > 0
> b = uint8(x & 0xff)
> push!(bytes, b)
> x = x >>> 8
> end
> str = convert(ASCIIString, reverse(bytes)) # Fails if any byte value >
> 127
>
> if typeof(len) <: Integer && (length(str) < len)
> str = repeat("\0", len - str) * str
> end
>
> return str
> end
>
>