diff --git a/readme.md b/readme.md
old mode 100644
new mode 100755
index f1268845..d9a55dbe
--- a/readme.md
+++ b/readme.md
@@ -735,6 +735,21 @@ echo $faker->bankAccountNumber; // "PL14968907563953822118075816"
 
 ```
 
+### `Faker\Provider\ja_JP\Person`
+
+```php
+<?php
+
+// Generates a 'kana' name
+echo $faker->kanaName; // "アオタ ナオコ"
+
+// Generates a 'kana' first name
+echo $faker->firstKanaName; // "トモミ"
+
+// Generates a 'kana' last name
+echo $faker->lastKanaName; // "ナギサ"
+```
+
 ## License
 
 Faker is released under the MIT Licence. See the bundled LICENSE file for details.
diff --git a/src/Faker/Provider/ja_JP/Person.php b/src/Faker/Provider/ja_JP/Person.php
old mode 100644
new mode 100755
index ce95426b..d3e9a2ee
--- a/src/Faker/Provider/ja_JP/Person.php
+++ b/src/Faker/Provider/ja_JP/Person.php
@@ -29,4 +29,57 @@ class Person extends \Faker\Provider\Person
         '三宅', '村山',
         '山田', '吉本'
     );
+
+    protected static $kanaFormats = array(
+        '{{lastKanaName}} {{firstKanaName}}'
+    );
+
+    protected static $firstKanaName = array(
+        'アキラ', 'アケミ', 'アスカ', 'オサム',
+        'カナ', 'キョウスケ', 'ケンイチ', 'クミコ',
+        'ジュン', 'ソウタロウ',
+        'タロウ', 'チヨ', 'トモミ', 'トモヤ',
+        'ナオキ', 'ナオコ',
+        'ハナコ', 'ヒロシ',
+        'ミツル', 'モモコ',
+        'ユミコ', 'リカ',
+    );
+
+    protected static $lastKanaName = array(
+        'アオタ', 'イダカ', 'ウノ', 'エコダ', 'オオガキ',
+        'カノウ', 'キジマ', 'クドウ', 'コイズミ',
+        'ササダ', 'スズキ', 'スギヤマ',
+        'タナベ', 'ツダ',
+        'ナギサ', 'ナカツガワ', 'ニシノソノ',
+        'ハラダ', 'ハマダ', 'ヒロカワ', 'フジモト',
+        'ミヤケ', 'ムラヤマ',
+        'ヤマダ', 'ヨシモト'
+    );
+
+    /**
+     * @example 'アオタ アキラ'
+     */
+    public function kanaName()
+    {
+        $format = static::randomElement(static::$kanaFormats);
+
+        return $this->generator->parse($format);
+    }
+
+    /**
+     * @example 'アオタ'
+     */
+    public static function firstKanaName()
+    {
+        return static::randomElement(static::$firstKanaName);
+    }
+
+    /**
+     * @example 'アキラ'
+     */
+    public static function lastKanaName()
+    {
+        return static::randomElement(static::$lastKanaName);
+    }
+
 }
diff --git a/test/Faker/Provider/ja_JP/PersonTest.php b/test/Faker/Provider/ja_JP/PersonTest.php
new file mode 100755
index 00000000..0f1ac62b
--- /dev/null
+++ b/test/Faker/Provider/ja_JP/PersonTest.php
@@ -0,0 +1,38 @@
+<?php
+
+namespace Faker\Test\Provider\ja_JP;
+
+use Faker\Generator;
+use Faker\Provider\ja_JP\Person;
+
+class PersonTest extends \PHPUnit_Framework_TestCase
+{
+
+    public function testKanaNameReturnsAotaNaoko()
+    {
+        $faker = new Generator();
+        $faker->addProvider(new Person($faker));
+        $faker->seed(1);
+
+        $this->assertEquals('アオタ ナオコ', $faker->kanaName());
+    }
+
+    public function testFirstKanaNameReturnsTomomi()
+    {
+        $faker = new Generator();
+        $faker->addProvider(new Person($faker));
+        $faker->seed(1);
+
+        $this->assertEquals('トモミ', $faker->firstKanaName);
+    }
+
+    public function testLastKanaNameReturnsNagisa()
+    {
+        $faker = new Generator();
+        $faker->addProvider(new Person($faker));
+        $faker->seed(1);
+
+        $this->assertEquals('ナギサ', $faker->lastKanaName);
+    }
+
+} 
\ No newline at end of file