Back after my holidays...

as for the key, I'd say an optional custom web.xml context parameter
is the way to go.

regards,

Martin

On 10/12/05, Dennis Byrne <[EMAIL PROTECTED]> wrote:
> Oh, and here's another one ;-) SSL encrypts everything.  This
> is often a problem for high volume systems where there is
> only a small chunk of data needing to be hidden.
>
>
> ---- Original message ----
> >Date: Wed, 12 Oct 2005 22:02:39 +0200
> >From: Werner Punz <[EMAIL PROTECTED]>
> >Subject: Re: t:saveState server/client ... or
> request/session
> >To: [email protected]
> >
> >Ok sorry did not think of that anymore, understandable after
> >13 hours of coding ;-)
> >
> >Werner
> >
> >
> >Mike Kienenberger wrote:
> >> Werner,
> >>
> >> We're talking about encryption of the client state data at
> the client,
> >> not of the data channel between the client and the
> server.  Right now,
> >> an end-user can do a view-source, then Base64 decode the
> state tree
> >> field to see all stored data.   Depending on what the
> application is
> >> doing, this could contain sensitive information.   It's a
> >> recommendation of the JSF 1.2 spec to encrypt this data.
> >>
> >> On 10/12/05, Werner Punz <[EMAIL PROTECTED]> wrote:
> >>
> >>>I do not think encryption is that important, signing
> probably yes,
> >>>but if you want encryption you always can switch to a ssl
> layer which
> >>>is easier to handle.
> >>>
> >>>
> >>>
> >>>
> >>>Mike Kienenberger wrote:
> >>>
> >>>>I did a search on the JSF 1.2 spec, and the four
> references to
> >>>>encrypting are all vague and general ("It is advisable
> that this
> >>>>[client saved state] information be encrypted and tamper
> evident,
> >>>>since it is being sent down to the client, where it may
> persist for
> >>>>some time."), so we're on our own here.
> >>>>
> >>>>There's a few different approaches.   The first is to
> simply generate
> >>>>a new key on startup and effectively expire all sessions
> when the
> >>>>server is restarted.   It's not a bad "first draft"
> implementation.
> >>>>However, it won't work in clustered environments nor
> across restarts.
> >>>>
> >>>>Saving the key in each session might work.   The
> environment may
> >>>>preserve server-side sessions across restarts, depending
> on the
> >>>>configuration.
> >>>>
> >>>>Another approach is to find some centralized location to
> store the
> >>>>encryption key.   I'm not really sure what's available.
> Maybe a file
> >>>>in "temp", and that has its own security concerns, but
> those are
> >>>>probably subordinate to client-side state saving concerns.
> >>>>
> >>>>As you stated, you could also store the key in the
> application as an
> >>>>unchangable attribute.    Maybe that's not a bad way to
> go either, but
> >>>>if that were the case, I'd like to be able to store it as
> a JNDI
> >>>>property.   I'd be a bit concerned about keeping the same
> key forever.
> >>>>  I think some "random" data would need to be padded into
> the state
> >>>>values, especially for shorter state values, in order to
> keep the
> >>>>encryption secure.
> >>>>
> >>>>I'd also like to recommend that the data is signed rather
> than just
> >>>>encrypted.   For me, having a cryptologically-signed
> state is more
> >>>>important than encrypting the state.    I'm not concerned
> that the
> >>>>end-user can read the state (after all, most of the state
> is visible
> >>>>in another form already).   I just don't want the end-
> user to be able
> >>>>to modify it.
> >>>>
> >>>>On 10/11/05, Dennis Byrne <[EMAIL PROTECTED]> wrote:
> >>>>
> >>>
> >>>
> >>
> >
> Dennis Byrne
>
>


--

http://www.irian.at
Your JSF powerhouse -
JSF Trainings in English and German

Reply via email to