org.abora.gold.be.locks
Class MatchLock

java.lang.Object
  |
  +--org.abora.gold.java.AboraHeaper
        |
        +--org.abora.gold.xpp.basic.Heaper
              |
              +--org.abora.gold.be.locks.Lock
                    |
                    +--org.abora.gold.be.locks.MatchLock

public class MatchLock
extends Lock

The correct password will open the lock. The password is actually stored in the club`s
MatchLockSmith in scrambled form, using a Scrambler identified by scramblerName(). The
scrambled cleartext supplied as a password is compared to the scrambledPassword in the
MatchLockSmith. If they match, the lock is opened.
The actual process is a bit more complicated than this. The user supplies a password in
clear, which is encrypted with the current system public key and then sent to the server.
There, it is first decrypted with the private key known only to the server. It is then
scrambled and compared with the scrambled password stored in the MatchLockSmith of the
club. This procedure both avoids sending passwords in clear over the network, and also
allows the MatchLockSmith to be made readable without compromising security.


Field Summary
 
Fields inherited from class org.abora.gold.be.locks.Lock
myLockSmith, myLoginClubID
 
Fields inherited from class org.abora.gold.xpp.basic.Heaper
AllBlasts, BecomeMap, GarbageCount, InGC, InitializedClasses, InitializingClasses, LastMemory, NextClientRequestNumber, NotOneElementSignal, PackageTable, PromiseNameTable, StringHashSBoxes
 
Fields inherited from class org.abora.gold.java.AboraHeaper
ActiveClubs, CurrentAuthor, CurrentBertCanopyCache, CurrentBertCrum, CurrentChunk, CurrentGrandMap, CurrentKeyMaster, CurrentPacker, CurrentSensorCanopyCache, CurrentServer, CurrentSession, CurrentSessions, CurrentTrace, InitialEditClub, InitialOwner, InitialReadClub, InitialSponsor, InsideTransactionFlag
 
Constructor Summary
MatchLock(ID loginID, FeMatchLockSmith lockSmith)
           
 
Method Summary
 FeKeyMaster encryptedPassword(PrimIntArray encrypted)
          Send the encrypted password to the server to be checked.
NOTE: (for protocol review) The password must have been encrypted using a
(yet-to-be-defined) front end library function, since this sort of front end computation
can't be done with Promises.
static void info()
          {FeKeyMaster CLIENT} encryptedPassword: encrypted {UInt8Array}
static Heaper make(ID clubID, FeMatchLockSmith lockSmith)
           
static void problems()
          A ProblemList for all X++ BLASTs
 
Methods inherited from class org.abora.gold.be.locks.Lock
actualHashForEqual, fetchLoginClubID, isEqual, lockSmith, loginClubID, makeKeyMaster
 
Methods inherited from class org.abora.gold.xpp.basic.Heaper
abstractDeclarationFor, abstractTypeFor, addMethodAttributeToInOf, addPackage, addPackageCategory, allClientProtocolOn, argumentTypesFor, arrow, blast, blast, BLAST, cachePromiseNameTable, cachePromiseNameTableIn, canYouBecome, cast, cleanPromiseClasses, cleanupGarbage, clientClassesDo, clientFunctionsOn, clientMethodsOn, clientProtocol, clientProtocolDo, clientProtocolOn, clientProtocolOn, collectibleClasses, compare, compileClientSubclasses, compileConstantPromiseMethods, compileCreateFromRcvr, compileEQ, compileGeneratedClassMethod, compileGeneratedMethod, compileHook, compilePromise, compilePromiseDefaultMethods, compilePromiseFluidDeclarations, compilePromiseHandlers, compilePromiseMethods, compileRequestCreateMsgInArguments, compileRequestEvaluateMsgInReturningArguments, compileRPCSpecialistEvaluateMsgForReturningArguments, compileSendSelfTo, compileSendSelfToSendHook, compileStubbleMethods, compileSubclassStubbleMethods, computeMangle, computePreorder, constantTypeValue, convert, convertCopyDeclarations, convertDeferredDeclarations, convertProxyDeclarations, convertSubclassCopyDeclarations, convertSubclassDeferredDeclarations, convertSubclassProxyDeclarations, copyReferencesToType, create, create, create, create, create, create, create, create, create, create, createRequestClassArguments, definesProxyMethods, delete, deref, destroy, destruct, destructor, enum, enumFlags, equals, exportName, fetchAttribute, fetchPackage, fetchSuperCategory, fileOutClientProtocol, findCategory, findSenderAndReceiverMethods, findTailInto, flushPromiseNameTable, foo, freezeClientClasses, freezeClientProtocol, freezeStProtocol, frozenClasses, garbageCollect, garbageCollectFrom, gcOpportunity, gcOpportunity, generatedCategory, generatePromiseNames, getCategory, getOrMakePackage, getSuperCategory, handlerSignaturesFrom, hash, hashForEqual, hasProxyMethods, info_clientClasses, info_clientSideClasses, info_promiseClasses, info_stProtocol, inGC, initializedClasses, initializingClasses, initPackages, initStringHashSBoxes, inspectPieces, instanceSize, IntegerVar, isByProxy, isConstructed, isDestructed, isEqual, isEqualOrSubclassOf, isGenerated, isIntType, isKindOf, isRawType, isUnlocked, linkTimeNonInherited, make, makeClassTable, makeFillTable, makeRequestTable, mangle, markChildren, markCount, markInstances, mayBecome, mayBecomeAnySubclassOf, new1, newX, nonCopyVariables, notWorking, pack, packageClasses, packagingCategory, parseExportName, passe, pointerToStaticMember, pointerToStaticMember, pointerToVirtualMember, preorderMax, preorderNumber, printOn, PROBLEM, promiseClass, promiseDefaultValue, promiseName, promiseNameTable, promiseToAbstract, registerPackageCategory, removeGeneratedCode, removeStubbleMethods, removeSubclassGeneratedCode, removeSubclassStubbleMethods, requestProcedure, requestProceduresFrom, returnTypeFor, rootName, scheduleTermination, sendProxyTo, sendSelfTo, serverNameFor, setGC, signal, signals, smalltalkSelector, stClientProtocol, stubbleSelectorTokenReturnsArguments, subclassNonCopyVariables, takeOop, togglePromiseName, togglePromiseOfParse, unimplemented, unmangle, verifyFreeze, wipeStubble
 
Methods inherited from class org.abora.gold.java.AboraHeaper
asOop, basicInspect, displayString, error, hack, halt, inspect, knownBug, mightNotImplement, REQUIRES, shouldImplement, shouldNotImplement, stubbleForSubclassResponsibility, thingToDo, willNotImplement
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

MatchLock

public MatchLock(ID loginID,
                 FeMatchLockSmith lockSmith)
Method Detail

encryptedPassword

public FeKeyMaster encryptedPassword(PrimIntArray encrypted)
Send the encrypted password to the server to be checked.
NOTE: (for protocol review) The password must have been encrypted using a
(yet-to-be-defined) front end library function, since this sort of front end computation
can't be done with Promises.


problems

public static void problems()
Description copied from class: Heaper
A ProblemList for all X++ BLASTs


make

public static Heaper make(ID clubID,
                          FeMatchLockSmith lockSmith)

info

public static void info()
{FeKeyMaster CLIENT} encryptedPassword: encrypted {UInt8Array}



Translation - Copyright © 2003 David G Jones. All Rights Reserved.
Original Udanax-Gold - Copyright © 1979-1999 Udanax.com. All rights reserved.