hereinafter reference will now be made in detail to various embodiments of the present invention , examples of which are illustrated in the accompanying drawings and described below . while the invention will be described in conjunction with exemplary embodiments , it will be understood that present description is not intended to limit the invention to those exemplary embodiments . on the contrary , the invention is intended to cover not only the exemplary embodiments , but also various alternatives , modifications , equivalents and other embodiments , which may be included within the spirit and scope of the invention as defined by the appended claims . fig2 illustrates a network configuration to which an imaged - based captcha providing system according to a preferred embodiment of the present invention is applied . the image - based captcha - providing system 10 is connected to a user client 14 via a network 12 , and provides an image - based captcha ( hereinafter , called a “ test image ”) to the user client , and determines if access by the user client 14 is permitted depending on the response from the user client 14 who received the capcha test image . here , the network 12 refers to a stateless network . the stateless network refers to a network that does not keep the state value in network connection , and uses a protocol such as http protocol . the image - based captcha - providing system 10 includes a user - interface unit 16 , a session - management unit 18 , an image - selection unit 20 , a test - image - generation unit 24 , a determination unit 26 , a session - information database 28 , and an image database 30 . the user - interface unit 16 provides connection to the user client 14 . specifically , the user - interface unit 16 receives a web - page request and / or a test - image request from the user client 14 , and provides the web page and the test image to the user client 14 . here , the web page provided by the user - interface unit 16 can include various information and predetermined values as variables . the user - interface unit 16 receives one or more words inputted by a user about the provided test image , and other various information for determining if user access is permitted . the session - management unit 18 manages generation and termination of a session . when a request for a web page is received through the user - interface unit 16 , the session - management unit 18 grants a session id to each session . further , when certain conditions are satisfied , the session - management unit 18 deletes session - related information to terminate the generated session . generally , if there is no response from the user client 14 for a certain period of time or a web browser is terminated , a session - management unit terminates the session . however , the session - management unit can terminate a generated session by deleting session - related information when a test image is provided , in order to reduce the overload of the image - based capcha - providing system 10 by keeping the session for a short period of time . further , when the image - selection unit 20 selects two or more images , the session - management unit 18 stores the selected images and meta information for each image along with each session id in the session database 28 . here , the meta information includes words that indicate objects included in each image . for example , referring to fig3 , because an image includes objects such as a computer , a chair and a human , the meta information includes words such as “ computer ”, “ chair ” and “ human ”. here , if there is space between words , it is preferable to include words that disregard space in the meta information . further , because a given object can be indicated by various words , meta information can include various words for the object . for example , referring to fig3 , “ computer ” or “ pc ” can be used for the object “ computer ”, and “ woman ”, “ girl ” or “ lady ” can be used for the object “ human ”. in addition , the session - management unit 18 provides session id and session start time information to the user - interface unit 16 so that the session id and session start time information can be included in a provided web page when the user - interface unit 16 provides the web page to the user client 14 . when a request for a web page is received through the user - interface unit 16 , the image - selection unit 20 randomly selects two or more images from the image database 30 , and stores the selected images and meta information for the selected images in the session database 28 through the session - management unit 18 . the operation unit 22 randomly selects salt values , and produces hash values for words included in the meta information of the selected images using the selected salt values and the hash function , which is described in the following equation . here , τ refers to the salt value , and x n refers to words included in the meta information . in one embodiment of the present invention , the operation unit 22 can use a hash function such as md5 or sha - 1 to produce the hash value for words included in the meta information . in another embodiment of the present invention , if the number of words included in the meta information for each image is smaller than a predetermined value , n , the ( lacking ) hash values can be substituted by random numbers . further , the operation unit 22 generates a long - term secret ( e . g ., secret key ) k of the image - based captcha - providing system 10 , and signs session start time information , salt values , and hash values of words included in meta information using the long - term secret k to generate signature value ( sig ), which is described in the following equation . sig = e k ( h ( t , τ , h ( τ | x 1 ), h ( τ | x 2 ), . . . , h ( τ | x n ))) equation 2 as illustrated in equation 2 , the operation unit 22 generates a hash value for session start time information , salt values , and hash values of words included in meta information using a hash function , and signs the hash value using the long - term secret k to generate signature value . further , when the user - interface unit 16 provides the requested web page to the user client 14 , the operation unit 22 provides the salt values , hash values of words included in the meta information , and signature value to the user - interface unit 16 so that the values can be included in the web page as variables . when there is a request for a test image corresponding to a session id provided to the user client 14 through the user - interface unit 16 , the test - image - generation unit 24 generates a test image by mixing or modifying two or more images , which are mapped with the session id , stored in the session database 28 , and provides the generated test image to the user client through the user - interface unit 16 . in one embodiment of the present invention , the test - image - generation unit 24 generates a test image by overlaying at least one portion of the images stored in the session database 28 . here , the alpha transparency of the overlaid image is randomly selected within the range that can be distinguished by a human . such an image overlay uses the fact that when the pixel value of a certain pixel and the pixel value of an adjacent pixel of the pixel are similar , the computer cannot identify it . fig4 a illustrates an example of a test image generated through an image - overlay process . in another embodiment of the present invention , the test - image - generation unit 24 generates a test image by substituting at least one portion of the images stored in the session database 28 . for example , at least one portion of a given image can be substituted by a randomly - selected different image . here , if the size of an area to be substituted is too large or too small in an image , a human cannot recognize it , so it is desirable to set the size of an area to be substituted in a range that can be recognized by a human . fig4 b illustrates an example of a test image generated through an image - substitution process . in the aforementioned embodiment , the test - image - generation unit 24 uses an image overlay and an image substitution as a method of mixing images to generate a test image , but the present invention is not limited to such the image - mixing methods . in another embodiment of the present invention , the test - image - generation unit 24 can modify mixed images using various image - modifying methods . for example , the test - image - generation unit 24 can modify mixed images using at least one of the methods including rotation , noise addition , erasure , distortion , brightness change and contrast change . here , rotation refers to randomly rotating an image within 360 ° in the right and left direction , noise addition refers to selecting one or more colors and randomly spreading the colors on the image , and erasure refers to removing a portion of the image . further , distortion refers to distorting an image , brightness change refers to changing the brightness of the image , and contrast change refers to changing the contrast of the image . here , noise addition can be essentially applied for a perfect image modification . fig5 illustrates an example of modifying an image by applying rotation , noise addition , erasure , distortion , brightness change and contrast change to a mixed image . fig5 a illustrates an example of modifying an image using rotation , fig5 b illustrates an example of modifying an image using noise addition , fig5 c illustrates an example of modifying an image using erasure , fig5 d illustrates an example of modifying distortion , fig5 e illustrates an example of modifying an image using brightness change , and fig5 f illustrates an example of modifying an image using contrast change . however , in addition to these methods , softness that softens an image , a blur that blurs an image , image magnification , image reduction or image color replacement can also be used . in the aforementioned embodiment , the test - image - generation unit 24 mixes images , and modifies the mixed image , but it is possible to modify at least one image among the selected two images , and then mix the modified images . the test - image - generation unit 24 provides a test image generated by the aforementioned process ( es ) to the user client through the user - interface unit 16 . further , in the case where there is no image corresponding to the session id , the test - image - generation unit 24 generates an error message , and transmits the generated error message to the user client 14 through the user - interface unit 16 . the determination unit 26 receives one or more words inputted by a user about the provided test image through the user - interface unit 16 , and determines whether user access is allowed . here , the determination unit 26 receives various sets of information to determine the user access . the various sets of information include session start time information , salt values , hash values of words included in meta information and their signature value . the determination unit 26 determines the validity of the session before the determination of the user access . in one embodiment of the present invention , determining the validity of the session can be implemented by three steps . first , the determination unit 26 compares session start time information received from the user client 14 and current time information , and determines whether the difference is more than a predetermined value . if the difference is more than the predetermined value , the session is not valid , so user access is not allowed . then , in the case where the difference is less than the predetermined value , the determination unit 26 determines whether the words inputted by the user have been already used . if the words have been already used , the session is not valid and user access is not allowed . the object of the aforementioned process is to prevent an access by an invader when the invader finds out the inputted word for the test image , and retransmits the word inputted by the user within a valid time period . for this , the determination unit 26 can store words received from user clients allowed to access in a separate database base ( not shown ), and the determination unit 24 can determine the access by the user client 14 by checking whether words received by the user client 14 exists in the separate database . here , it is desirable for the words stored in the separate database to be stored only while the session is valid . finally , if the difference between the session start time information and the current time information is less than a predetermined value , and words received by the user client 14 is not stored in a separate database , the determination unit 26 determines whether a signature value , which is generated by signing the session start time information , salt values , and hash values of words included in the meta information transmitted from the user client using the long term secret k , coincide with the signature value transmitted from the user client 14 . if the generated signature value does not coincide with the transmitted signature value , the session is not valid , so user access is not allowed . if the above three conditions are satisfied , the session is valid , so the determination unit 26 extracts words from hash values of words included in the meta information transmitted from the user client 14 , and compares extracted words with the words inputted by the user about the test image . here , if there is a space in extracted words or words inputted by the user , it is desirable to compare the words after removing the space . as a result of the comparison , if more than a certain number of words among words inputted by the user about the test image coincide with the extracted words , the determination unit 26 can allow user access . for example , it is assumed that the access is allowed if a test image , as shown in fig4 , is provided to the user client 14 , several words such as “ ball ”, “ soccer ball ”, “ butterfly ”, “ hand ” and “ flower ” are extracted from hash values of words included in the meta information transmitted from the user client 14 , and two or more words among words inputted by the user about the test image coincide with the extract words . first , if the words “ ball ” and “ hand ” are inputted by the user about the test image , the “ ball ” and the “ hand ” coincide with two of the extract words , so user access is allowed . on the other hand , if the words “ desk ” and “ chair ” are inputted by the user , the inputted words do not coincide with the extract words , user access is not allowed . in the aforementioned embodiment , the determination unit 26 checks three conditions to determine the validity of a session , but it is still possible to determine the validity by at least one of the three conditions . further , in the aforementioned embodiment , three conditions are checked in order , but it is still possible to check the three conditions randomly . further , in the aforementioned embodiment , the image - based - captcha - providing system performs a determination process to determine the access by the user client , but it is still possible for the user client to perform such a determination process . for this , an agent program such as a scripter or an active x control can be installed in advance to perform such a determination process . that is , such an agent program installed in the user client extracts words from hash values of words included in the meta information transmitted from the image - based - captcha - providing system , and then determines whether more than a certain number of words among the words inputted by the user about the test image coincide with the extract words . according to the embodiment , because the validity about the test image does not need to be checked , the operation unit 22 does not need to generate a signature value in the image - based - captcha - providing system 10 , and because the function of the determination unit 24 can be implemented by a program installed in the user client 14 , there is no need for a determination unit 24 . further , the user client 14 does not need to transmit words inputted by the user and various sets of information for determining the access by the user client to the image - based - captcha - providing system 10 . the user client 14 can transmit only the result of the determination . the selected images and meta information for the images are stored along with the session ids in the session database 28 , and the various images are stored along with meta information for each image in the image database 30 . in one embodiment of the present invention , it is desirable to use images photographed by an image - photographing means for images stored in the image database 30 . further , an object included in each image can be two - dimensional or three - dimensional . fig6 is a flowchart illustrating a method of providing an image - based captcha according to one embodiment of the present invention . as illustrated , when a request for a web page including a captcha is received from a user client ( s 100 ), two or more images are randomly selected from the image database ( s 110 ). then , the selected two or more images and the meta information for the images are stored along with the session ids granted to each session in the session database ( s 120 ). next , salt values are randomly selected , and hash values for one or more words included in the meta information for each image are produced using the hash function ( s 130 ). then , a signature value is generated by signing the hash values , the session start time information , and the salt values using the long term secret k of the image - based - captcha - providing system ( s 140 ). next , the web page corresponding to the web - page request received from the user client is provided along with the session id to the user client ( s 150 ). here , the signature value generated in the step s 140 , the hash values , the session start time information , and the salt values are transmitted to the user client as variables of form or scripter included in the web page . then , if the web page provided to the user client is loaded to the user client , a request for a test image corresponding to the session id is received from the user client ( s 160 ). in one embodiment of the present invention , a request for a test image received from the user client can be performed in a tag form such as & lt ; img src =“. . . / genimage . php ? session = λ ” border =“ 0 ”/& gt ;. in accordance with the request for a test image , it is determined whether there are images for the session id within the session database ( s 170 ). if there are such images , a test image is generated by mixing or modifying two or more images stored in the session database , and is then provided to the user client ( s 180 ). in one embodiment of the present invention , two or more images are mixed by an image overlay or image substitution , and then a test image is generated by modifying the mixed image using modification methods such as rotation , noise addition , erasure , distortion , brightness change , contrast change , softness , blur , image magnification , image reduction and image color contrast . in a modified embodiment , first , at least one of the two or more images is modified using at least one of the modification methods such as rotation , noise addition , erasure , distortion , brightness change , contrast change , softness , blur , image magnification , image reduction and image color contrast , and the modified images can then be mixed using the image overlay or image substitution . further , as a result of the determination in step s 170 , if there is no image corresponding to the session id in the session database , an error message is generated , and the message is then provided to the user client ( s 190 ). then , the session is terminated by deleting session - related information stored in the session database ( s 200 ). next , if one or more words about the test image are inputted by the user , one or more words inputted by the user about the test image , session start time information , salt values , hash values of words included in the meta information , and signature value are received from the user client ( s 210 ). then , the validity of the session is determined using information received from the user client ( s 220 ). in one embodiment of the present invention , the validity of the session can be determined using at least one of the following criteria : whether the difference between the session start time information and the current time information is less than a predetermined value ; whether the words inputted by the user are stored in a separate database ; and whether a signature value , which is generated by signing the session start time information , salt values , and hash values of words included in the meta information transmitted from the user client using the long term secret k of the image - based captcha providing system , coincide with the signature values transmitted from the user client . this determination procedure is described in detail above with regard to the determination unit 26 . as a result of the determination , if the test image is valid , the words inputted by the user about the test image and extract words from the hash value transmitted the user client are compared ( s 230 ). here , the extracted words are same words included in the meta information of the selected image . as a result of the comparison , if more than a certain number of words among the words inputted by the user coincide with the extract words , user access is allowed ( s 240 ). otherwise , it is not allowed ( s 250 ). further , as a result of the determination in step s 220 , if the session is invalid , user access is not allowed ( s 250 ). fig7 is a flowchart illustrating a method of providing an image - based captcha according to another embodiment of the present invention . the method of providing an image - based captcha illustrated in fig7 is the same as that illustrated in fig6 , except that the determination process of the user access is performed on user client side . specifically , the step of receiving a request for a web page ( s 300 ), the step of selecting two or more images ( s 310 ), the step of storing the selected images and the meta information for each image ( s 320 ), and the step of producing hash values for the words included in the meta information for each image ( s 330 ) are the same as those illustrated in fig6 , except that the step of producing signature value illustrated in fig6 is not necessary in the method illustrated in fig7 because the determination whether user access is allowed is determined on the user client side . then , a web page is provided to the user client ( s 340 ). here , hash values , which are for one or more words included in the meta information for each image , produced in step 330 , session start time information , and salt values are transmitted to the user client as variables of form or scripter included in the web page . that is , signature value were transmitted together in the method illustrated in fig6 , but the signature values do not need to be transmitted in the method illustrated in fig7 . then , when a request for a test image corresponding to the session id is received from the user client ( s 350 ), it is determined whether there is any image about the session id in the session database ( s 360 ). as a result of the determination , if there is any image , a test image is generated , and the generated image is provided to the user client ( s 370 ). if there is no image , an error message is generated , and the error message is provided to the user client ( s 380 ). then , the session is terminated by deleting session - related information stored in the session database ( s 390 ). next , when one or more words are inputted by the user for a test image ( s 400 ), the user client compares extracted words the hash values transmitted the image - based captcha providing system in the step s 340 , and the words inputted by the user ( s 410 ). here , the extracted words are same words included in the meta information of the selected image . as a result of the comparison , if more than a certain number of words among the words inputted by the user coincide with the extracted words , a message that requests an access by the user client is generated , and the generated message is transmitted to the image - based - captcha - providing system ( s 420 ), otherwise a message that the access by the user client is not allowed is generated , and the generated message is transmitted to the image - based - captcha - providing system ( s 430 ). the image - based - captcha - providing system determines the access by the user client depending on the type of the message received from the user client . in the aforementioned embodiments , the image - based - captcha - providing system provides image - based captcha when the system is connected to the user client using a stateless network , but in a modified embodiment , the image - based captcha can be provided when the system is connected to the user client using a stateful network . the method of providing captcha through the stateful network is described in detail below with reference to fig8 . first , when a request for captcha is received from the user client ( s 500 ), two or more images corresponding to the request are randomly selected from the image database ( s 510 ). then , the test image is generated by mixing or modifying the selected images ( s 520 ). here , the methods of mixing and modifying images used in generating a test image are the same as those in the method of providing captcha through the stateless network . next , one or more words inputted by the user about the test image are received from the user client ( s 530 ), and the received one or more words are compared with one or more words included in the meta information of each image ( s 540 ). as a result of the comparison , if more than a certain number of words among the words inputted by the user coincide with the words included in the meta information , user access is allowed ( s 550 ). otherwise , it is not allowed ( s 560 ). the test method using the afore - mentioned image - based captcha can be implemented in the form of a program that can be performed by various types of computers , and the program for performing the test method using the image - based captcha can be stored in any recording medium readable by a computer , such as a hard - disk drive , cd - rom , dvd , rom , ram or flash memory . the method and apparatus of the present invention has the advantages including the following : first , because captcha is generated by mixing two or more images , the range of image modification can be extended , and the incapacitation by an ai technique can be prevented , thereby improving the accessibility for the captcha . second , because the test of captcha can be performed in a user client side , the transmission of unnecessary messages can be prevented , thereby lowering the load of a server . the invention has been described in detail with reference to preferred embodiments thereof . however , it will be appreciated by those skilled in the art that changes may be made in these embodiments without departing from the principles and spirit of the invention , the scope of which is defined in the appended claims and their equivalents .