11.07.2015 Views

Encyclopedia of Computer Science and Technology

Encyclopedia of Computer Science and Technology

Encyclopedia of Computer Science and Technology

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

118 CORBA“activation” or “validation,” as with Micros<strong>of</strong>t Windows<strong>and</strong> Office products. The online validation process canforestall the use <strong>of</strong> valid but duplicated serial numbers(see digital rights management <strong>and</strong> s<strong>of</strong>tware piracy<strong>and</strong> counterfeiting).Hackers <strong>and</strong> cyber-libertarians have <strong>of</strong>ten argued thatthe problem <strong>of</strong> s<strong>of</strong>tware piracy has been overrated, <strong>and</strong>that allowing the copying <strong>of</strong> s<strong>of</strong>tware would enable morepeople who would not otherwise buy programs to try themout. Once someone likes the program, they might buy itnot only for legitimacy <strong>of</strong> ownership, but in order to getaccess to the technical support <strong>and</strong> regular upgrades thatare <strong>of</strong>ten required for complex business s<strong>of</strong>tware packages.For less expensive s<strong>of</strong>tware, an alternative channel (seeshareware) allows for a “try before you buy” distribution<strong>of</strong> s<strong>of</strong>tware.Further ReadingAldrich, John. “Implementing Simple Copy Protection: TechnicalOverview.” Available online. URL: http://www.codeproject.com/win32/simplecopyprotection.asp?df=100&foru mid=4250&exp=0&select=878288. Accessed September 6, 2007.Gilmore, John. “What’s Wrong with Copy Protection.” February16, 2001. Available online. URL: http://www.toad.com/gnu/whatswrong.html. Accessed September 6, 2007.Wikipedia. “Copy Protection.” Available online. URL: http://en.wikipedia.org/wiki/Copy_protection. Accessed September6, 2007.CORBA (Common Object Request BrokerArchitecture)CORBA (Common Object Request Broker Architecture) is ast<strong>and</strong>ardized way to specify how different applications (onthe same or different machines) can call upon the services<strong>of</strong> database objects (see database <strong>and</strong> object-orientedprogramming). The CORBA st<strong>and</strong>ard is defined by theObject Management Group (OMG), a consortium <strong>of</strong> morethan 700 companies or organizations, including the majorplayers in distributed database technology.Structure <strong>and</strong> UsageCreating a CORBA application involves three basic steps.First, specifications are provided using an interface definitionlanguage (IDL) that specifies in generic terms whatservices an object will provide. An IDL compiler then createsa “skeleton” interface that the developer can fill in withactual code for a class for that object in a programming language(such as Java).To use CORBA, a client application accesses an ObjectRequest Broker (ORB), which is s<strong>of</strong>tware that locates thereferenced object on the network (thus the program doesnot need to know or keep track <strong>of</strong> specific locations). TheORB sends the request to the object, which processes it <strong>and</strong>returns the results, which are then sent back to the clientapplication.The intent <strong>of</strong> CORBA is to make objects implementedby different vendors fully interoperable (able to call oneanother using the same syntax). While CORBA 1.0 did notcompletely meet this goal, CORBA 2.0 explicitly providedfor a protocol called IIOP (Internet Inter-ORB Protocol)that, if adhered to, does make brokers (ORBs) <strong>and</strong> objectsinteroperable across vendors <strong>and</strong> programming languages.CORBA 3 adds a new CORBA Component Model (CCM)<strong>and</strong> specifications that, among other things, provide forbetter negotiation with firewalls, a problem that had madeCORBA hard to use in Web development.Corba ServicesIn addition to the interfaces defined for particular objects,CORBA provides a number <strong>of</strong> services that apply to allobjects. These services include creating, moving/copying,or removing objects; allowing more readable names forobjects; concurrency <strong>and</strong> transaction control; setting propertiesfor objects; <strong>and</strong> sending queries to objects.A competing framework for distributed object computingis COM/DCOM (Common Object Model/DistributedCommon Object Model, now supplanted by .NET (seeMicros<strong>of</strong>t.net). A simpler (though possibly less secure)way to connect programs running on different machines isto use the Simple Object Access Protocol (see soap).Further ReadingBolton, Fintan. Pure CORBA. Indianapolis: Sams, 2001.“Introduction to CORBA” [Java implementation]. Availableonline. URL: http://java.sun.com/developer/onlineTraining/corba/corba.html. Accessed September 4, 2007.McHale, Ciaran. “CORBA Explained Simply, 2007.” Availableonline. URL: http://www.ciaranmchale.com/corba-explainedsimply/.Accessed September 4, 2007.counterterrorism <strong>and</strong> computersCounterterrorism is the effort to detect, identify, <strong>and</strong> neutralizeterrorist groups <strong>and</strong> prevent attacks. Not surprisingly,information technology plays a part in every phase<strong>of</strong> this effort—<strong>and</strong> sometimes even becomes part <strong>of</strong> thebattlefield.Intelligence <strong>and</strong> SurveillanceThe Web <strong>and</strong> other Internet services are an important part<strong>of</strong> the battle against terrorism, not least because terroriststhemselves are beginning to use online tools effectively(see cyberterrorism). The Internet inherently allows forconsiderable anonymity (see anonymity <strong>and</strong> the Internet).However, any online activity leaves traces, howevervirtual, <strong>and</strong> surveillance, intelligence, <strong>and</strong> forensic techniquesare being adapted to this new medium (see computerforensics).By putting so much material online, terrorists are exposingthemselves to the increasingly sophisticated data mining<strong>and</strong> “semantic Web” tools that are being developed.These tools can, for example, identify material likely to be<strong>of</strong> interest (<strong>and</strong> summarize it) <strong>and</strong> even analyze the relationshipbetween individuals or groups based on their writingor verbal communications. Of course such results muststill be reviewed <strong>and</strong> acted upon by trained human analysts.Further, surveillance tools that are deployed too widely orindiscriminately are liable to raise privacy concerns.

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!