Another way to think about it...
https://play.golang.org/p/XtfFgwYw3f8


On Mon, Jan 21, 2019 at 10:26 AM <silviucap...@gmail.com> wrote:

> Like Christian said, your main problem is how Javascript and how Go
> iterate.
>
> In your Javascript example, you use:
>
> for(var i=0;i<input.length;i++){
>
> so you iterate in a +1 increment regardless of any type of characters.
> When you range over a Go string, you will see the iterator jumping 1,2 or 3
> positions depending on the type of rune.
>
> Your modulo calculation index % len(key) will match for ascii (e.g.
> English characters), but will different after the first non-ascii characters
>
> So you should explore something like this:
> https://play.golang.org/p/23nMX2dFhJF
>
>
> On Sunday, 20 January 2019 10:14:05 UTC-5, Soorya Prakash wrote:
>>
>>
>> I am using the below code to encrypt and decrypt the data. Now I want to
>> encrypt the data from Node JS and want to decrypt the data from Go lang.
>> But I am not able to achieve it using GO lang.
>>
>> var B64XorCipher = {
>>   encode: function(key, data) {
>>     return new Buffer(xorStrings(key, data),'utf8').toString('base64');
>>   },
>>   decode: function(key, data) {
>>     data = new Buffer(data,'base64').toString('utf8');
>>     return xorStrings(key, data);
>>   }};
>> function xorStrings(key,input){
>>   var output='';
>>   for(var i=0;i<input.length;i++){
>>     var c = input.charCodeAt(i);
>>     var k = key.charCodeAt(i%key.length);
>>     output += String.fromCharCode(c ^ k);
>>   }
>>   return output;}
>>
>> From go I am trying to decode like below I am not able to achieve it.
>>
>> bytes, err := base64.StdEncoding.DecodeString(actualInput)
>> encryptedText := string(bytes)
>> fmt.Println(EncryptDecrypt(encryptedText, "XXXXXX"))
>>
>> func EncryptDecrypt(input, key string) (output string) {
>>     for i := range input {
>>         output += string(input[i] ^ key[i%len(key)])
>>     }
>>
>>     return output}
>>
>> Can someone help me to resolve it.
>>
> --
> You received this message because you are subscribed to the Google Groups
> "golang-nuts" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to golang-nuts+unsubscr...@googlegroups.com.
> For more options, visit https://groups.google.com/d/optout.
>


-- 

*Michael T. jonesmichael.jo...@gmail.com <michael.jo...@gmail.com>*

-- 
You received this message because you are subscribed to the Google Groups 
"golang-nuts" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to golang-nuts+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to