librelist archives

« back to archive

Fwd: Requirement : Enabling OTR makes browser unresponsive

Fwd: Requirement : Enabling OTR makes browser unresponsive

From:
Gauri Padbidri
Date:
2015-02-10 @ 15:03
---------- Forwarded message ----------
From: Gauri Padbidri <gauri.padbidri@gmail.com>
Date: Tue, Feb 10, 2015 at 8:30 PM
Subject: Requirement : Enabling OTR makes browser unresponsive
To: conversejs@librelist.com


Hi All,

My ConverseJS Init Object looks as given below :

converse.initialize({
            auto_list_rooms: false,
            auto_subscribe: false,
            bosh_service_url: 'http://10.0.10.90:5280/http-bind', //
Please use this connection manager only for testing purposes
            hide_muc_server: false,
            i18n: locales.en, // Refer to ./locale/locales.js to see
which locales are supported
            prebind: false,
            play_sounds: false,
            show_controlbox_by_default: true,
            roster_groups: true,
            keepalive: true,
            allow_otr: true,
            use_otr_by_default: true,
            allow_muc: true
        });

I want "Off The record encryption (OTR)" enabled for my users..However,
setting the below 2 options as TRUE makes my borwsers (ALL viz : GC / FF /
IE) unresponsive :

allow_otr: true,
use_otr_by_default: true

What can be the reason for this browser unresponsiveness...Also, I
currently have only 1 USER in my Roster List (for test purpose)..How can
this issue be resolved ? *OR is it some XMPP / Ejabberd Server settings ?*

Best Regards,

Gauri Padbidri

Re: [conversejs] Fwd: Requirement : Enabling OTR makes browser unresponsive

From:
Jc Brand
Date:
2015-02-11 @ 14:23
On Tue, Feb 10, 2015 at 08:33:32PM +0530, Gauri Padbidri wrote:
>    Hi All,
> 
>    My ConverseJS Init Object looks as given below :
> 
>  converse.initialize({
>              auto_list_rooms: false,
>              auto_subscribe: false,
>              bosh_service_url: '[3]http://10.0.10.90:5280/http-bind', //
Please use this connection manager only for testing purposes
>              hide_muc_server: false,
>              i18n: locales.en, // Refer to ./locale/locales.js to see 
which locales are supported
>              prebind: false,
>              play_sounds: false,
>              show_controlbox_by_default: true,
>              roster_groups: true,
>              keepalive: true,
>              allow_otr: true,
>              use_otr_by_default: true,
>              allow_muc: true
>          });
> 
>    I want "Off The record encryption (OTR)" enabled for my users..However,
>    setting the below 2 options as TRUE makes my borwsers (ALL viz : GC / FF /
>    IE) unresponsive :
> 
>  allow_otr: true,
>  use_otr_by_default: true
> 
>    What can be the reason for this browser unresponsiveness...Also, I
>    currently have only 1 USER in my Roster List (for test purpose)..How can
>    this issue be resolved ? OR is it some XMPP / Ejabberd Server settings ?

The browser needs to generate a cryptographic key for the OTR session. This
locks up the CPU and makes the browser hang.

This should only happen the first time converse.js is opened and not on every
page load.

It's why I didn't consider use_otr_by_default to be really feasible, but people
asked for it, so I added it.

Browsers are starting to ship with a Web Crypto API. Using that would probably
improve performance.

That depends however on otr.js and not converse.js.
https://github.com/arlolra/otr