A method for patching software through a software update agent device, comprising: the software update agent device parsing software related information between old and new versions of a software data, and extracting difference related information for the old and new versions of the software data; the software update agent device identifying a partition and blocks in the partition from the extracted difference related information; and the software update agent device patching the old version of the software data in a client device with the new version of the software data by using the extracted difference related information of the old and new versions of the software data for the blocks in the identified partition; characterized in that the partition comprises one or more of the blocks and is distinguished according to a program, a kernel, or a filesystem; wherein each of the blocks is a data obtained by dividing all data of the partition by a predetermined block size, in case of the program or kernel, and each of the blocks is a data obtained by dividing each file data composed of the filesystem by the block size, in case of the filesystem; wherein the difference related information comprises a differential data stream generated for the one or more of the blocks with one of Equal, Insert or Mod as a sequence, determined by comparing each of corresponding blocks for the old and new versions of the software data; wherein the differential data stream comprises the determined one of Equal, Insert, or Mod, and a data length information indicating a length for each block of a new version of a block for the determined one of Equal, Insert, or Mod; and wherein the patching comprises: the software update agent device generating the new version of the software data by reflecting the extracted difference related information to the old version of the software data; and the software update agent device overwriting the generated new version of the block into corresponding old version of the block in the identified partition for the old version of the software data previously installed on the client device. the software update agent device parsing software related information between old and new versions of a software data, and extracting difference related information for the old and new versions of the software data; the software update agent device identifying a partition and blocks in the partition from the extracted difference related information; and the software update agent device patching the old version of the software data in a client device with the new version of the software data by using the extracted difference related information of the old and new versions of the software data for the blocks in the identified partition; characterized in that the partition comprises one or more of the blocks and is distinguished according to a program, a kernel, or a filesystem; wherein each of the blocks is a data obtained by dividing all data of the partition by a predetermined block size, in case of the program or kernel, and each of the blocks is a data obtained by dividing each file data composed of the filesystem by the block size, in case of the filesystem; wherein the difference related information comprises a differential data stream generated for the one or more of the blocks with one of Equal, Insert or Mod as a sequence, determined by comparing each of corresponding blocks for the old and new versions of the software data; wherein the differential data stream comprises the determined one of Equal, Insert, or Mod, and a data length information indicating a length for each block of a new version of a block for the determined one of Equal, Insert, or Mod; and wherein the patching comprises: the software update agent device generating the new version of the software data by reflecting the extracted difference related information to the old version of the software data; and the software update agent device overwriting the generated new version of the block into corresponding old version of the block in the identified partition for the old version of the software data previously installed on the client device. the software update agent device generating the new version of the software data by reflecting the extracted difference related information to the old version of the software data; and the software update agent device overwriting the generated new version of the block into corresponding old version of the block in the identified partition for the old version of the software data previously installed on the client device.